{
  "nbformat": 4,
  "nbformat_minor": 0,
  "metadata": {
    "colab": {
      "provenance": [],
      "authorship_tag": "ABX9TyNCko4OECdVf0PACZ9faZl9",
      "include_colab_link": true
    },
    "kernelspec": {
      "name": "python3",
      "display_name": "Python 3"
    },
    "language_info": {
      "name": "python"
    }
  },
  "cells": [
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "view-in-github",
        "colab_type": "text"
      },
      "source": [
        "<a href=\"https://colab.research.google.com/github/alessandropequeno/PPGEEC-Deep-Learning-UFRN/blob/main/Lista2_questao_5_0.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>"
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "## 5-) Considere uma rede deep learning LSTM já treinada. Aplique a mesma em problemas de predição do tipo x(n+1) de livre escolha:\n",
        "### Sugestões:\n",
        "### i) Predição da palavras seguinte em um texto\n",
        "### ii) Predição do quadro (frame da imagem) seguinte em um vídeo\n",
        "### iii) Predição do valor de uma ação no mercado financeiro no instante (n+1).\n",
        "### iv) Outra aplicações"
      ],
      "metadata": {
        "id": "QYsseCaIOnMH"
      }
    },
    {
      "cell_type": "markdown",
      "source": [
        "### 1. Importando as Bibliotecas"
      ],
      "metadata": {
        "id": "_0UQW4yEO2FX"
      }
    },
    {
      "cell_type": "code",
      "execution_count": 2,
      "metadata": {
        "id": "NkrwrMDxyVDp"
      },
      "outputs": [],
      "source": [
        "import pandas as pd\n",
        "import numpy as np\n",
        "import matplotlib.pyplot as plt\n",
        "\n",
        "import torch\n",
        "import torch.nn as nn"
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "### 2. Montando o MeuDrive"
      ],
      "metadata": {
        "id": "Zk0gOcrpO8Kp"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "from google.colab import drive\n",
        "drive.mount('/content/drive')"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "9pse7Zm-Nvuf",
        "outputId": "20a0fd57-7597-4b98-fbff-935c53b4058c"
      },
      "execution_count": 3,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Mounted at /content/drive\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "### 3. Importando o dataset da Amazon"
      ],
      "metadata": {
        "id": "do9bUsSKPGIm"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "data = pd.read_csv('/content/drive/My Drive/AMZN.csv')\n",
        "data"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 424
        },
        "id": "mv2aQE_ENyiA",
        "outputId": "6e5bbba0-8a08-4170-935a-bc2165b24b39"
      },
      "execution_count": 4,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "            Date        Open        High         Low       Close   Adj Close  \\\n",
              "0     1997-05-15    0.121875    0.125000    0.096354    0.097917    0.097917   \n",
              "1     1997-05-16    0.098438    0.098958    0.085417    0.086458    0.086458   \n",
              "2     1997-05-19    0.088021    0.088542    0.081250    0.085417    0.085417   \n",
              "3     1997-05-20    0.086458    0.087500    0.081771    0.081771    0.081771   \n",
              "4     1997-05-21    0.081771    0.082292    0.068750    0.071354    0.071354   \n",
              "...          ...         ...         ...         ...         ...         ...   \n",
              "6511  2023-03-30  101.550003  103.040001  101.010002  102.000000  102.000000   \n",
              "6512  2023-03-31  102.160004  103.489998  101.949997  103.290001  103.290001   \n",
              "6513  2023-04-03  102.300003  103.290001  101.430000  102.410004  102.410004   \n",
              "6514  2023-04-04  102.750000  104.199997  102.110001  103.949997  103.949997   \n",
              "6515  2023-04-05  103.910004  103.910004  100.750000  101.099998  101.099998   \n",
              "\n",
              "          Volume  \n",
              "0     1443120000  \n",
              "1      294000000  \n",
              "2      122136000  \n",
              "3      109344000  \n",
              "4      377064000  \n",
              "...          ...  \n",
              "6511    53633400  \n",
              "6512    56704300  \n",
              "6513    41135700  \n",
              "6514    48662500  \n",
              "6515    45103000  \n",
              "\n",
              "[6516 rows x 7 columns]"
            ],
            "text/html": [
              "\n",
              "  <div id=\"df-86227197-91db-44cc-9eb3-1a812a5fd9ef\" class=\"colab-df-container\">\n",
              "    <div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Date</th>\n",
              "      <th>Open</th>\n",
              "      <th>High</th>\n",
              "      <th>Low</th>\n",
              "      <th>Close</th>\n",
              "      <th>Adj Close</th>\n",
              "      <th>Volume</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>1997-05-15</td>\n",
              "      <td>0.121875</td>\n",
              "      <td>0.125000</td>\n",
              "      <td>0.096354</td>\n",
              "      <td>0.097917</td>\n",
              "      <td>0.097917</td>\n",
              "      <td>1443120000</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>1997-05-16</td>\n",
              "      <td>0.098438</td>\n",
              "      <td>0.098958</td>\n",
              "      <td>0.085417</td>\n",
              "      <td>0.086458</td>\n",
              "      <td>0.086458</td>\n",
              "      <td>294000000</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>1997-05-19</td>\n",
              "      <td>0.088021</td>\n",
              "      <td>0.088542</td>\n",
              "      <td>0.081250</td>\n",
              "      <td>0.085417</td>\n",
              "      <td>0.085417</td>\n",
              "      <td>122136000</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>1997-05-20</td>\n",
              "      <td>0.086458</td>\n",
              "      <td>0.087500</td>\n",
              "      <td>0.081771</td>\n",
              "      <td>0.081771</td>\n",
              "      <td>0.081771</td>\n",
              "      <td>109344000</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>1997-05-21</td>\n",
              "      <td>0.081771</td>\n",
              "      <td>0.082292</td>\n",
              "      <td>0.068750</td>\n",
              "      <td>0.071354</td>\n",
              "      <td>0.071354</td>\n",
              "      <td>377064000</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>...</th>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>6511</th>\n",
              "      <td>2023-03-30</td>\n",
              "      <td>101.550003</td>\n",
              "      <td>103.040001</td>\n",
              "      <td>101.010002</td>\n",
              "      <td>102.000000</td>\n",
              "      <td>102.000000</td>\n",
              "      <td>53633400</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>6512</th>\n",
              "      <td>2023-03-31</td>\n",
              "      <td>102.160004</td>\n",
              "      <td>103.489998</td>\n",
              "      <td>101.949997</td>\n",
              "      <td>103.290001</td>\n",
              "      <td>103.290001</td>\n",
              "      <td>56704300</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>6513</th>\n",
              "      <td>2023-04-03</td>\n",
              "      <td>102.300003</td>\n",
              "      <td>103.290001</td>\n",
              "      <td>101.430000</td>\n",
              "      <td>102.410004</td>\n",
              "      <td>102.410004</td>\n",
              "      <td>41135700</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>6514</th>\n",
              "      <td>2023-04-04</td>\n",
              "      <td>102.750000</td>\n",
              "      <td>104.199997</td>\n",
              "      <td>102.110001</td>\n",
              "      <td>103.949997</td>\n",
              "      <td>103.949997</td>\n",
              "      <td>48662500</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>6515</th>\n",
              "      <td>2023-04-05</td>\n",
              "      <td>103.910004</td>\n",
              "      <td>103.910004</td>\n",
              "      <td>100.750000</td>\n",
              "      <td>101.099998</td>\n",
              "      <td>101.099998</td>\n",
              "      <td>45103000</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>6516 rows × 7 columns</p>\n",
              "</div>\n",
              "    <div class=\"colab-df-buttons\">\n",
              "\n",
              "  <div class=\"colab-df-container\">\n",
              "    <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-86227197-91db-44cc-9eb3-1a812a5fd9ef')\"\n",
              "            title=\"Convert this dataframe to an interactive table.\"\n",
              "            style=\"display:none;\">\n",
              "\n",
              "  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n",
              "    <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n",
              "  </svg>\n",
              "    </button>\n",
              "\n",
              "  <style>\n",
              "    .colab-df-container {\n",
              "      display:flex;\n",
              "      gap: 12px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert {\n",
              "      background-color: #E8F0FE;\n",
              "      border: none;\n",
              "      border-radius: 50%;\n",
              "      cursor: pointer;\n",
              "      display: none;\n",
              "      fill: #1967D2;\n",
              "      height: 32px;\n",
              "      padding: 0 0 0 0;\n",
              "      width: 32px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert:hover {\n",
              "      background-color: #E2EBFA;\n",
              "      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "      fill: #174EA6;\n",
              "    }\n",
              "\n",
              "    .colab-df-buttons div {\n",
              "      margin-bottom: 4px;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert {\n",
              "      background-color: #3B4455;\n",
              "      fill: #D2E3FC;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert:hover {\n",
              "      background-color: #434B5C;\n",
              "      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
              "      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
              "      fill: #FFFFFF;\n",
              "    }\n",
              "  </style>\n",
              "\n",
              "    <script>\n",
              "      const buttonEl =\n",
              "        document.querySelector('#df-86227197-91db-44cc-9eb3-1a812a5fd9ef button.colab-df-convert');\n",
              "      buttonEl.style.display =\n",
              "        google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "\n",
              "      async function convertToInteractive(key) {\n",
              "        const element = document.querySelector('#df-86227197-91db-44cc-9eb3-1a812a5fd9ef');\n",
              "        const dataTable =\n",
              "          await google.colab.kernel.invokeFunction('convertToInteractive',\n",
              "                                                    [key], {});\n",
              "        if (!dataTable) return;\n",
              "\n",
              "        const docLinkHtml = 'Like what you see? Visit the ' +\n",
              "          '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n",
              "          + ' to learn more about interactive tables.';\n",
              "        element.innerHTML = '';\n",
              "        dataTable['output_type'] = 'display_data';\n",
              "        await google.colab.output.renderOutput(dataTable, element);\n",
              "        const docLink = document.createElement('div');\n",
              "        docLink.innerHTML = docLinkHtml;\n",
              "        element.appendChild(docLink);\n",
              "      }\n",
              "    </script>\n",
              "  </div>\n",
              "\n",
              "\n",
              "<div id=\"df-baff92ba-d9a0-40cb-9d32-ff72818f23aa\">\n",
              "  <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-baff92ba-d9a0-40cb-9d32-ff72818f23aa')\"\n",
              "            title=\"Suggest charts\"\n",
              "            style=\"display:none;\">\n",
              "\n",
              "<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n",
              "     width=\"24px\">\n",
              "    <g>\n",
              "        <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n",
              "    </g>\n",
              "</svg>\n",
              "  </button>\n",
              "\n",
              "<style>\n",
              "  .colab-df-quickchart {\n",
              "      --bg-color: #E8F0FE;\n",
              "      --fill-color: #1967D2;\n",
              "      --hover-bg-color: #E2EBFA;\n",
              "      --hover-fill-color: #174EA6;\n",
              "      --disabled-fill-color: #AAA;\n",
              "      --disabled-bg-color: #DDD;\n",
              "  }\n",
              "\n",
              "  [theme=dark] .colab-df-quickchart {\n",
              "      --bg-color: #3B4455;\n",
              "      --fill-color: #D2E3FC;\n",
              "      --hover-bg-color: #434B5C;\n",
              "      --hover-fill-color: #FFFFFF;\n",
              "      --disabled-bg-color: #3B4455;\n",
              "      --disabled-fill-color: #666;\n",
              "  }\n",
              "\n",
              "  .colab-df-quickchart {\n",
              "    background-color: var(--bg-color);\n",
              "    border: none;\n",
              "    border-radius: 50%;\n",
              "    cursor: pointer;\n",
              "    display: none;\n",
              "    fill: var(--fill-color);\n",
              "    height: 32px;\n",
              "    padding: 0;\n",
              "    width: 32px;\n",
              "  }\n",
              "\n",
              "  .colab-df-quickchart:hover {\n",
              "    background-color: var(--hover-bg-color);\n",
              "    box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "    fill: var(--button-hover-fill-color);\n",
              "  }\n",
              "\n",
              "  .colab-df-quickchart-complete:disabled,\n",
              "  .colab-df-quickchart-complete:disabled:hover {\n",
              "    background-color: var(--disabled-bg-color);\n",
              "    fill: var(--disabled-fill-color);\n",
              "    box-shadow: none;\n",
              "  }\n",
              "\n",
              "  .colab-df-spinner {\n",
              "    border: 2px solid var(--fill-color);\n",
              "    border-color: transparent;\n",
              "    border-bottom-color: var(--fill-color);\n",
              "    animation:\n",
              "      spin 1s steps(1) infinite;\n",
              "  }\n",
              "\n",
              "  @keyframes spin {\n",
              "    0% {\n",
              "      border-color: transparent;\n",
              "      border-bottom-color: var(--fill-color);\n",
              "      border-left-color: var(--fill-color);\n",
              "    }\n",
              "    20% {\n",
              "      border-color: transparent;\n",
              "      border-left-color: var(--fill-color);\n",
              "      border-top-color: var(--fill-color);\n",
              "    }\n",
              "    30% {\n",
              "      border-color: transparent;\n",
              "      border-left-color: var(--fill-color);\n",
              "      border-top-color: var(--fill-color);\n",
              "      border-right-color: var(--fill-color);\n",
              "    }\n",
              "    40% {\n",
              "      border-color: transparent;\n",
              "      border-right-color: var(--fill-color);\n",
              "      border-top-color: var(--fill-color);\n",
              "    }\n",
              "    60% {\n",
              "      border-color: transparent;\n",
              "      border-right-color: var(--fill-color);\n",
              "    }\n",
              "    80% {\n",
              "      border-color: transparent;\n",
              "      border-right-color: var(--fill-color);\n",
              "      border-bottom-color: var(--fill-color);\n",
              "    }\n",
              "    90% {\n",
              "      border-color: transparent;\n",
              "      border-bottom-color: var(--fill-color);\n",
              "    }\n",
              "  }\n",
              "</style>\n",
              "\n",
              "  <script>\n",
              "    async function quickchart(key) {\n",
              "      const quickchartButtonEl =\n",
              "        document.querySelector('#' + key + ' button');\n",
              "      quickchartButtonEl.disabled = true;  // To prevent multiple clicks.\n",
              "      quickchartButtonEl.classList.add('colab-df-spinner');\n",
              "      try {\n",
              "        const charts = await google.colab.kernel.invokeFunction(\n",
              "            'suggestCharts', [key], {});\n",
              "      } catch (error) {\n",
              "        console.error('Error during call to suggestCharts:', error);\n",
              "      }\n",
              "      quickchartButtonEl.classList.remove('colab-df-spinner');\n",
              "      quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n",
              "    }\n",
              "    (() => {\n",
              "      let quickchartButtonEl =\n",
              "        document.querySelector('#df-baff92ba-d9a0-40cb-9d32-ff72818f23aa button');\n",
              "      quickchartButtonEl.style.display =\n",
              "        google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "    })();\n",
              "  </script>\n",
              "</div>\n",
              "\n",
              "  <div id=\"id_19c6fbf0-b255-48ea-ad53-8dd9c9c955cc\">\n",
              "    <style>\n",
              "      .colab-df-generate {\n",
              "        background-color: #E8F0FE;\n",
              "        border: none;\n",
              "        border-radius: 50%;\n",
              "        cursor: pointer;\n",
              "        display: none;\n",
              "        fill: #1967D2;\n",
              "        height: 32px;\n",
              "        padding: 0 0 0 0;\n",
              "        width: 32px;\n",
              "      }\n",
              "\n",
              "      .colab-df-generate:hover {\n",
              "        background-color: #E2EBFA;\n",
              "        box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "        fill: #174EA6;\n",
              "      }\n",
              "\n",
              "      [theme=dark] .colab-df-generate {\n",
              "        background-color: #3B4455;\n",
              "        fill: #D2E3FC;\n",
              "      }\n",
              "\n",
              "      [theme=dark] .colab-df-generate:hover {\n",
              "        background-color: #434B5C;\n",
              "        box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
              "        filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
              "        fill: #FFFFFF;\n",
              "      }\n",
              "    </style>\n",
              "    <button class=\"colab-df-generate\" onclick=\"generateWithVariable('data')\"\n",
              "            title=\"Generate code using this dataframe.\"\n",
              "            style=\"display:none;\">\n",
              "\n",
              "  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n",
              "       width=\"24px\">\n",
              "    <path d=\"M7,19H8.4L18.45,9,17,7.55,7,17.6ZM5,21V16.75L18.45,3.32a2,2,0,0,1,2.83,0l1.4,1.43a1.91,1.91,0,0,1,.58,1.4,1.91,1.91,0,0,1-.58,1.4L9.25,21ZM18.45,9,17,7.55Zm-12,3A5.31,5.31,0,0,0,4.9,8.1,5.31,5.31,0,0,0,1,6.5,5.31,5.31,0,0,0,4.9,4.9,5.31,5.31,0,0,0,6.5,1,5.31,5.31,0,0,0,8.1,4.9,5.31,5.31,0,0,0,12,6.5,5.46,5.46,0,0,0,6.5,12Z\"/>\n",
              "  </svg>\n",
              "    </button>\n",
              "    <script>\n",
              "      (() => {\n",
              "      const buttonEl =\n",
              "        document.querySelector('#id_19c6fbf0-b255-48ea-ad53-8dd9c9c955cc button.colab-df-generate');\n",
              "      buttonEl.style.display =\n",
              "        google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "\n",
              "      buttonEl.onclick = () => {\n",
              "        google.colab.notebook.generateWithVariable('data');\n",
              "      }\n",
              "      })();\n",
              "    </script>\n",
              "  </div>\n",
              "\n",
              "    </div>\n",
              "  </div>\n"
            ],
            "application/vnd.google.colaboratory.intrinsic+json": {
              "type": "dataframe",
              "variable_name": "data",
              "summary": "{\n  \"name\": \"data\",\n  \"rows\": 6516,\n  \"fields\": [\n    {\n      \"column\": \"Date\",\n      \"properties\": {\n        \"dtype\": \"object\",\n        \"num_unique_values\": 6516,\n        \"samples\": [\n          \"2020-12-11\",\n          \"2004-10-25\",\n          \"2001-05-07\"\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Open\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 48.09534261371011,\n        \"min\": 0.070313,\n        \"max\": 187.199997,\n        \"num_unique_values\": 5793,\n        \"samples\": [\n          1.3215,\n          1.9245,\n          0.9335\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"High\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 48.659651412037995,\n        \"min\": 0.072396,\n        \"max\": 188.654007,\n        \"num_unique_values\": 5752,\n        \"samples\": [\n          4.805,\n          152.906494,\n          15.011\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Low\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 47.46447631003133,\n        \"min\": 0.065625,\n        \"max\": 184.839493,\n        \"num_unique_values\": 5756,\n        \"samples\": [\n          2.21,\n          89.363998,\n          42.525501\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Close\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 48.06025829174995,\n        \"min\": 0.069792,\n        \"max\": 186.570496,\n        \"num_unique_values\": 5899,\n        \"samples\": [\n          133.220001,\n          1.8475,\n          2.3005\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Adj Close\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 48.06025829174995,\n        \"min\": 0.069792,\n        \"max\": 186.570496,\n        \"num_unique_values\": 5899,\n        \"samples\": [\n          133.220001,\n          1.8475,\n          2.3005\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Volume\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 140161943,\n        \"min\": 9744000,\n        \"max\": 2086584000,\n        \"num_unique_values\": 6324,\n        \"samples\": [\n          645424000,\n          461112000,\n          62752000\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    }\n  ]\n}"
            }
          },
          "metadata": {},
          "execution_count": 4
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "data = data[['Date', 'Close']]\n",
        "data"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 424
        },
        "id": "CNAykwdPPWvF",
        "outputId": "060afc55-f5a1-45ec-c02a-2d27c410444e"
      },
      "execution_count": 5,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "            Date       Close\n",
              "0     1997-05-15    0.097917\n",
              "1     1997-05-16    0.086458\n",
              "2     1997-05-19    0.085417\n",
              "3     1997-05-20    0.081771\n",
              "4     1997-05-21    0.071354\n",
              "...          ...         ...\n",
              "6511  2023-03-30  102.000000\n",
              "6512  2023-03-31  103.290001\n",
              "6513  2023-04-03  102.410004\n",
              "6514  2023-04-04  103.949997\n",
              "6515  2023-04-05  101.099998\n",
              "\n",
              "[6516 rows x 2 columns]"
            ],
            "text/html": [
              "\n",
              "  <div id=\"df-ab42a62d-f776-4c9f-9600-42a7857648db\" class=\"colab-df-container\">\n",
              "    <div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Date</th>\n",
              "      <th>Close</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>1997-05-15</td>\n",
              "      <td>0.097917</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>1997-05-16</td>\n",
              "      <td>0.086458</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>1997-05-19</td>\n",
              "      <td>0.085417</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>1997-05-20</td>\n",
              "      <td>0.081771</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>1997-05-21</td>\n",
              "      <td>0.071354</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>...</th>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>6511</th>\n",
              "      <td>2023-03-30</td>\n",
              "      <td>102.000000</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>6512</th>\n",
              "      <td>2023-03-31</td>\n",
              "      <td>103.290001</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>6513</th>\n",
              "      <td>2023-04-03</td>\n",
              "      <td>102.410004</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>6514</th>\n",
              "      <td>2023-04-04</td>\n",
              "      <td>103.949997</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>6515</th>\n",
              "      <td>2023-04-05</td>\n",
              "      <td>101.099998</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>6516 rows × 2 columns</p>\n",
              "</div>\n",
              "    <div class=\"colab-df-buttons\">\n",
              "\n",
              "  <div class=\"colab-df-container\">\n",
              "    <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-ab42a62d-f776-4c9f-9600-42a7857648db')\"\n",
              "            title=\"Convert this dataframe to an interactive table.\"\n",
              "            style=\"display:none;\">\n",
              "\n",
              "  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n",
              "    <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n",
              "  </svg>\n",
              "    </button>\n",
              "\n",
              "  <style>\n",
              "    .colab-df-container {\n",
              "      display:flex;\n",
              "      gap: 12px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert {\n",
              "      background-color: #E8F0FE;\n",
              "      border: none;\n",
              "      border-radius: 50%;\n",
              "      cursor: pointer;\n",
              "      display: none;\n",
              "      fill: #1967D2;\n",
              "      height: 32px;\n",
              "      padding: 0 0 0 0;\n",
              "      width: 32px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert:hover {\n",
              "      background-color: #E2EBFA;\n",
              "      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "      fill: #174EA6;\n",
              "    }\n",
              "\n",
              "    .colab-df-buttons div {\n",
              "      margin-bottom: 4px;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert {\n",
              "      background-color: #3B4455;\n",
              "      fill: #D2E3FC;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert:hover {\n",
              "      background-color: #434B5C;\n",
              "      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
              "      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
              "      fill: #FFFFFF;\n",
              "    }\n",
              "  </style>\n",
              "\n",
              "    <script>\n",
              "      const buttonEl =\n",
              "        document.querySelector('#df-ab42a62d-f776-4c9f-9600-42a7857648db button.colab-df-convert');\n",
              "      buttonEl.style.display =\n",
              "        google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "\n",
              "      async function convertToInteractive(key) {\n",
              "        const element = document.querySelector('#df-ab42a62d-f776-4c9f-9600-42a7857648db');\n",
              "        const dataTable =\n",
              "          await google.colab.kernel.invokeFunction('convertToInteractive',\n",
              "                                                    [key], {});\n",
              "        if (!dataTable) return;\n",
              "\n",
              "        const docLinkHtml = 'Like what you see? Visit the ' +\n",
              "          '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n",
              "          + ' to learn more about interactive tables.';\n",
              "        element.innerHTML = '';\n",
              "        dataTable['output_type'] = 'display_data';\n",
              "        await google.colab.output.renderOutput(dataTable, element);\n",
              "        const docLink = document.createElement('div');\n",
              "        docLink.innerHTML = docLinkHtml;\n",
              "        element.appendChild(docLink);\n",
              "      }\n",
              "    </script>\n",
              "  </div>\n",
              "\n",
              "\n",
              "<div id=\"df-10738ccc-977d-4ea0-ad25-e4da68d0fafb\">\n",
              "  <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-10738ccc-977d-4ea0-ad25-e4da68d0fafb')\"\n",
              "            title=\"Suggest charts\"\n",
              "            style=\"display:none;\">\n",
              "\n",
              "<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n",
              "     width=\"24px\">\n",
              "    <g>\n",
              "        <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n",
              "    </g>\n",
              "</svg>\n",
              "  </button>\n",
              "\n",
              "<style>\n",
              "  .colab-df-quickchart {\n",
              "      --bg-color: #E8F0FE;\n",
              "      --fill-color: #1967D2;\n",
              "      --hover-bg-color: #E2EBFA;\n",
              "      --hover-fill-color: #174EA6;\n",
              "      --disabled-fill-color: #AAA;\n",
              "      --disabled-bg-color: #DDD;\n",
              "  }\n",
              "\n",
              "  [theme=dark] .colab-df-quickchart {\n",
              "      --bg-color: #3B4455;\n",
              "      --fill-color: #D2E3FC;\n",
              "      --hover-bg-color: #434B5C;\n",
              "      --hover-fill-color: #FFFFFF;\n",
              "      --disabled-bg-color: #3B4455;\n",
              "      --disabled-fill-color: #666;\n",
              "  }\n",
              "\n",
              "  .colab-df-quickchart {\n",
              "    background-color: var(--bg-color);\n",
              "    border: none;\n",
              "    border-radius: 50%;\n",
              "    cursor: pointer;\n",
              "    display: none;\n",
              "    fill: var(--fill-color);\n",
              "    height: 32px;\n",
              "    padding: 0;\n",
              "    width: 32px;\n",
              "  }\n",
              "\n",
              "  .colab-df-quickchart:hover {\n",
              "    background-color: var(--hover-bg-color);\n",
              "    box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "    fill: var(--button-hover-fill-color);\n",
              "  }\n",
              "\n",
              "  .colab-df-quickchart-complete:disabled,\n",
              "  .colab-df-quickchart-complete:disabled:hover {\n",
              "    background-color: var(--disabled-bg-color);\n",
              "    fill: var(--disabled-fill-color);\n",
              "    box-shadow: none;\n",
              "  }\n",
              "\n",
              "  .colab-df-spinner {\n",
              "    border: 2px solid var(--fill-color);\n",
              "    border-color: transparent;\n",
              "    border-bottom-color: var(--fill-color);\n",
              "    animation:\n",
              "      spin 1s steps(1) infinite;\n",
              "  }\n",
              "\n",
              "  @keyframes spin {\n",
              "    0% {\n",
              "      border-color: transparent;\n",
              "      border-bottom-color: var(--fill-color);\n",
              "      border-left-color: var(--fill-color);\n",
              "    }\n",
              "    20% {\n",
              "      border-color: transparent;\n",
              "      border-left-color: var(--fill-color);\n",
              "      border-top-color: var(--fill-color);\n",
              "    }\n",
              "    30% {\n",
              "      border-color: transparent;\n",
              "      border-left-color: var(--fill-color);\n",
              "      border-top-color: var(--fill-color);\n",
              "      border-right-color: var(--fill-color);\n",
              "    }\n",
              "    40% {\n",
              "      border-color: transparent;\n",
              "      border-right-color: var(--fill-color);\n",
              "      border-top-color: var(--fill-color);\n",
              "    }\n",
              "    60% {\n",
              "      border-color: transparent;\n",
              "      border-right-color: var(--fill-color);\n",
              "    }\n",
              "    80% {\n",
              "      border-color: transparent;\n",
              "      border-right-color: var(--fill-color);\n",
              "      border-bottom-color: var(--fill-color);\n",
              "    }\n",
              "    90% {\n",
              "      border-color: transparent;\n",
              "      border-bottom-color: var(--fill-color);\n",
              "    }\n",
              "  }\n",
              "</style>\n",
              "\n",
              "  <script>\n",
              "    async function quickchart(key) {\n",
              "      const quickchartButtonEl =\n",
              "        document.querySelector('#' + key + ' button');\n",
              "      quickchartButtonEl.disabled = true;  // To prevent multiple clicks.\n",
              "      quickchartButtonEl.classList.add('colab-df-spinner');\n",
              "      try {\n",
              "        const charts = await google.colab.kernel.invokeFunction(\n",
              "            'suggestCharts', [key], {});\n",
              "      } catch (error) {\n",
              "        console.error('Error during call to suggestCharts:', error);\n",
              "      }\n",
              "      quickchartButtonEl.classList.remove('colab-df-spinner');\n",
              "      quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n",
              "    }\n",
              "    (() => {\n",
              "      let quickchartButtonEl =\n",
              "        document.querySelector('#df-10738ccc-977d-4ea0-ad25-e4da68d0fafb button');\n",
              "      quickchartButtonEl.style.display =\n",
              "        google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "    })();\n",
              "  </script>\n",
              "</div>\n",
              "\n",
              "  <div id=\"id_ed61a6b9-721b-486e-b655-768ed21a5751\">\n",
              "    <style>\n",
              "      .colab-df-generate {\n",
              "        background-color: #E8F0FE;\n",
              "        border: none;\n",
              "        border-radius: 50%;\n",
              "        cursor: pointer;\n",
              "        display: none;\n",
              "        fill: #1967D2;\n",
              "        height: 32px;\n",
              "        padding: 0 0 0 0;\n",
              "        width: 32px;\n",
              "      }\n",
              "\n",
              "      .colab-df-generate:hover {\n",
              "        background-color: #E2EBFA;\n",
              "        box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "        fill: #174EA6;\n",
              "      }\n",
              "\n",
              "      [theme=dark] .colab-df-generate {\n",
              "        background-color: #3B4455;\n",
              "        fill: #D2E3FC;\n",
              "      }\n",
              "\n",
              "      [theme=dark] .colab-df-generate:hover {\n",
              "        background-color: #434B5C;\n",
              "        box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
              "        filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
              "        fill: #FFFFFF;\n",
              "      }\n",
              "    </style>\n",
              "    <button class=\"colab-df-generate\" onclick=\"generateWithVariable('data')\"\n",
              "            title=\"Generate code using this dataframe.\"\n",
              "            style=\"display:none;\">\n",
              "\n",
              "  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n",
              "       width=\"24px\">\n",
              "    <path d=\"M7,19H8.4L18.45,9,17,7.55,7,17.6ZM5,21V16.75L18.45,3.32a2,2,0,0,1,2.83,0l1.4,1.43a1.91,1.91,0,0,1,.58,1.4,1.91,1.91,0,0,1-.58,1.4L9.25,21ZM18.45,9,17,7.55Zm-12,3A5.31,5.31,0,0,0,4.9,8.1,5.31,5.31,0,0,0,1,6.5,5.31,5.31,0,0,0,4.9,4.9,5.31,5.31,0,0,0,6.5,1,5.31,5.31,0,0,0,8.1,4.9,5.31,5.31,0,0,0,12,6.5,5.46,5.46,0,0,0,6.5,12Z\"/>\n",
              "  </svg>\n",
              "    </button>\n",
              "    <script>\n",
              "      (() => {\n",
              "      const buttonEl =\n",
              "        document.querySelector('#id_ed61a6b9-721b-486e-b655-768ed21a5751 button.colab-df-generate');\n",
              "      buttonEl.style.display =\n",
              "        google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "\n",
              "      buttonEl.onclick = () => {\n",
              "        google.colab.notebook.generateWithVariable('data');\n",
              "      }\n",
              "      })();\n",
              "    </script>\n",
              "  </div>\n",
              "\n",
              "    </div>\n",
              "  </div>\n"
            ],
            "application/vnd.google.colaboratory.intrinsic+json": {
              "type": "dataframe",
              "variable_name": "data",
              "summary": "{\n  \"name\": \"data\",\n  \"rows\": 6516,\n  \"fields\": [\n    {\n      \"column\": \"Date\",\n      \"properties\": {\n        \"dtype\": \"object\",\n        \"num_unique_values\": 6516,\n        \"samples\": [\n          \"2020-12-11\",\n          \"2004-10-25\",\n          \"2001-05-07\"\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Close\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 48.06025829174995,\n        \"min\": 0.069792,\n        \"max\": 186.570496,\n        \"num_unique_values\": 5899,\n        \"samples\": [\n          133.220001,\n          1.8475,\n          2.3005\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    }\n  ]\n}"
            }
          },
          "metadata": {},
          "execution_count": 5
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "### 4. Verificando o tipo de device"
      ],
      "metadata": {
        "id": "Xg3xr0PdoXQH"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "device = 'cuda:0' if torch.cuda.is_available() else 'cpu'\n",
        "device"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 35
        },
        "id": "P9hh1KK3PXZm",
        "outputId": "8a5c7dbf-ccbd-4dbd-dfcb-50554feab403"
      },
      "execution_count": 6,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "'cpu'"
            ],
            "application/vnd.google.colaboratory.intrinsic+json": {
              "type": "string"
            }
          },
          "metadata": {},
          "execution_count": 6
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "### 5. Transformando a feature Data em formato de datetime"
      ],
      "metadata": {
        "id": "IWT6eKV8ol4P"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "data['Date'] = pd.to_datetime(data['Date'])\n",
        "\n",
        "plt.plot(data['Date'], data['Close'])"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 552
        },
        "id": "aOECaejMo6YU",
        "outputId": "9beb17a1-a4a7-4550-a68b-9ba9d1bd9d75"
      },
      "execution_count": 7,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stderr",
          "text": [
            "<ipython-input-7-27440ea654b2>:1: SettingWithCopyWarning: \n",
            "A value is trying to be set on a copy of a slice from a DataFrame.\n",
            "Try using .loc[row_indexer,col_indexer] = value instead\n",
            "\n",
            "See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n",
            "  data['Date'] = pd.to_datetime(data['Date'])\n"
          ]
        },
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "[<matplotlib.lines.Line2D at 0x7ddbf156d720>]"
            ]
          },
          "metadata": {},
          "execution_count": 7
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 640x480 with 1 Axes>"
            ],
            "image/png": "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\n"
          },
          "metadata": {}
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "### 6. Preparando o DataFrame para ser usado em um modelo LSTM"
      ],
      "metadata": {
        "id": "yiSSaOMKpae3"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "from copy import deepcopy as dc\n",
        "\n",
        "# n_steps: número de etapas (passos) anteriores a considerar para cada observação\n",
        "def prepare_dataframe_for_lstm(df, n_steps):\n",
        "    df = dc(df)\n",
        "\n",
        "    # Definindo a coluna 'Date' como o índice do DataFrame\n",
        "    df.set_index('Date', inplace=True)\n",
        "\n",
        "    # Para cada iteração, adiciona uma nova celula ao DataFrame, onde cada\n",
        "    # valor é deslocado para tras 'i' periodos (dias), representando o preço\n",
        "    # de fechamento passado em relação ao dia atual.\n",
        "    for i in range(1, n_steps+1):\n",
        "        df[f'Close(t-{i})'] = df['Close'].shift(i)\n",
        "\n",
        "    df.dropna(inplace=True)\n",
        "\n",
        "    return df\n",
        "\n",
        "# Em resumo, essa função adiciona ao DataFrame de entreda contendo os preços\n",
        "# de fechamento dos dias anteriores, para que possam ser usados como recuros\n",
        "# para prever o preço de fechamento futuro, como normalmente é feito em modelos\n",
        "# de séries temporais, como os baseados em LSTM.\n",
        "\n",
        "lookback = 7\n",
        "shifted_df = prepare_dataframe_for_lstm(data, lookback)\n",
        "shifted_df"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 455
        },
        "id": "JsOliWO4o8F0",
        "outputId": "87ae39ac-a0c7-476d-9876-89fbe52189ec"
      },
      "execution_count": 11,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "                 Close  Close(t-1)  Close(t-2)  Close(t-3)  Close(t-4)  \\\n",
              "Date                                                                     \n",
              "1997-05-27    0.079167    0.075000    0.069792    0.071354    0.081771   \n",
              "1997-05-28    0.076563    0.079167    0.075000    0.069792    0.071354   \n",
              "1997-05-29    0.075260    0.076563    0.079167    0.075000    0.069792   \n",
              "1997-05-30    0.075000    0.075260    0.076563    0.079167    0.075000   \n",
              "1997-06-02    0.075521    0.075000    0.075260    0.076563    0.079167   \n",
              "...                ...         ...         ...         ...         ...   \n",
              "2023-03-30  102.000000  100.250000   97.239998   98.040001   98.129997   \n",
              "2023-03-31  103.290001  102.000000  100.250000   97.239998   98.040001   \n",
              "2023-04-03  102.410004  103.290001  102.000000  100.250000   97.239998   \n",
              "2023-04-04  103.949997  102.410004  103.290001  102.000000  100.250000   \n",
              "2023-04-05  101.099998  103.949997  102.410004  103.290001  102.000000   \n",
              "\n",
              "            Close(t-5)  Close(t-6)  Close(t-7)  \n",
              "Date                                            \n",
              "1997-05-27    0.085417    0.086458    0.097917  \n",
              "1997-05-28    0.081771    0.085417    0.086458  \n",
              "1997-05-29    0.071354    0.081771    0.085417  \n",
              "1997-05-30    0.069792    0.071354    0.081771  \n",
              "1997-06-02    0.075000    0.069792    0.071354  \n",
              "...                ...         ...         ...  \n",
              "2023-03-30   98.709999   98.699997  100.610001  \n",
              "2023-03-31   98.129997   98.709999   98.699997  \n",
              "2023-04-03   98.040001   98.129997   98.709999  \n",
              "2023-04-04   97.239998   98.040001   98.129997  \n",
              "2023-04-05  100.250000   97.239998   98.040001  \n",
              "\n",
              "[6509 rows x 8 columns]"
            ],
            "text/html": [
              "\n",
              "  <div id=\"df-513d61dc-6249-4d94-bf66-a0ac071da978\" class=\"colab-df-container\">\n",
              "    <div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Close</th>\n",
              "      <th>Close(t-1)</th>\n",
              "      <th>Close(t-2)</th>\n",
              "      <th>Close(t-3)</th>\n",
              "      <th>Close(t-4)</th>\n",
              "      <th>Close(t-5)</th>\n",
              "      <th>Close(t-6)</th>\n",
              "      <th>Close(t-7)</th>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>Date</th>\n",
              "      <th></th>\n",
              "      <th></th>\n",
              "      <th></th>\n",
              "      <th></th>\n",
              "      <th></th>\n",
              "      <th></th>\n",
              "      <th></th>\n",
              "      <th></th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>1997-05-27</th>\n",
              "      <td>0.079167</td>\n",
              "      <td>0.075000</td>\n",
              "      <td>0.069792</td>\n",
              "      <td>0.071354</td>\n",
              "      <td>0.081771</td>\n",
              "      <td>0.085417</td>\n",
              "      <td>0.086458</td>\n",
              "      <td>0.097917</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1997-05-28</th>\n",
              "      <td>0.076563</td>\n",
              "      <td>0.079167</td>\n",
              "      <td>0.075000</td>\n",
              "      <td>0.069792</td>\n",
              "      <td>0.071354</td>\n",
              "      <td>0.081771</td>\n",
              "      <td>0.085417</td>\n",
              "      <td>0.086458</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1997-05-29</th>\n",
              "      <td>0.075260</td>\n",
              "      <td>0.076563</td>\n",
              "      <td>0.079167</td>\n",
              "      <td>0.075000</td>\n",
              "      <td>0.069792</td>\n",
              "      <td>0.071354</td>\n",
              "      <td>0.081771</td>\n",
              "      <td>0.085417</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1997-05-30</th>\n",
              "      <td>0.075000</td>\n",
              "      <td>0.075260</td>\n",
              "      <td>0.076563</td>\n",
              "      <td>0.079167</td>\n",
              "      <td>0.075000</td>\n",
              "      <td>0.069792</td>\n",
              "      <td>0.071354</td>\n",
              "      <td>0.081771</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1997-06-02</th>\n",
              "      <td>0.075521</td>\n",
              "      <td>0.075000</td>\n",
              "      <td>0.075260</td>\n",
              "      <td>0.076563</td>\n",
              "      <td>0.079167</td>\n",
              "      <td>0.075000</td>\n",
              "      <td>0.069792</td>\n",
              "      <td>0.071354</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>...</th>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2023-03-30</th>\n",
              "      <td>102.000000</td>\n",
              "      <td>100.250000</td>\n",
              "      <td>97.239998</td>\n",
              "      <td>98.040001</td>\n",
              "      <td>98.129997</td>\n",
              "      <td>98.709999</td>\n",
              "      <td>98.699997</td>\n",
              "      <td>100.610001</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2023-03-31</th>\n",
              "      <td>103.290001</td>\n",
              "      <td>102.000000</td>\n",
              "      <td>100.250000</td>\n",
              "      <td>97.239998</td>\n",
              "      <td>98.040001</td>\n",
              "      <td>98.129997</td>\n",
              "      <td>98.709999</td>\n",
              "      <td>98.699997</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2023-04-03</th>\n",
              "      <td>102.410004</td>\n",
              "      <td>103.290001</td>\n",
              "      <td>102.000000</td>\n",
              "      <td>100.250000</td>\n",
              "      <td>97.239998</td>\n",
              "      <td>98.040001</td>\n",
              "      <td>98.129997</td>\n",
              "      <td>98.709999</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2023-04-04</th>\n",
              "      <td>103.949997</td>\n",
              "      <td>102.410004</td>\n",
              "      <td>103.290001</td>\n",
              "      <td>102.000000</td>\n",
              "      <td>100.250000</td>\n",
              "      <td>97.239998</td>\n",
              "      <td>98.040001</td>\n",
              "      <td>98.129997</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2023-04-05</th>\n",
              "      <td>101.099998</td>\n",
              "      <td>103.949997</td>\n",
              "      <td>102.410004</td>\n",
              "      <td>103.290001</td>\n",
              "      <td>102.000000</td>\n",
              "      <td>100.250000</td>\n",
              "      <td>97.239998</td>\n",
              "      <td>98.040001</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>6509 rows × 8 columns</p>\n",
              "</div>\n",
              "    <div class=\"colab-df-buttons\">\n",
              "\n",
              "  <div class=\"colab-df-container\">\n",
              "    <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-513d61dc-6249-4d94-bf66-a0ac071da978')\"\n",
              "            title=\"Convert this dataframe to an interactive table.\"\n",
              "            style=\"display:none;\">\n",
              "\n",
              "  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n",
              "    <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n",
              "  </svg>\n",
              "    </button>\n",
              "\n",
              "  <style>\n",
              "    .colab-df-container {\n",
              "      display:flex;\n",
              "      gap: 12px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert {\n",
              "      background-color: #E8F0FE;\n",
              "      border: none;\n",
              "      border-radius: 50%;\n",
              "      cursor: pointer;\n",
              "      display: none;\n",
              "      fill: #1967D2;\n",
              "      height: 32px;\n",
              "      padding: 0 0 0 0;\n",
              "      width: 32px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert:hover {\n",
              "      background-color: #E2EBFA;\n",
              "      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "      fill: #174EA6;\n",
              "    }\n",
              "\n",
              "    .colab-df-buttons div {\n",
              "      margin-bottom: 4px;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert {\n",
              "      background-color: #3B4455;\n",
              "      fill: #D2E3FC;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert:hover {\n",
              "      background-color: #434B5C;\n",
              "      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
              "      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
              "      fill: #FFFFFF;\n",
              "    }\n",
              "  </style>\n",
              "\n",
              "    <script>\n",
              "      const buttonEl =\n",
              "        document.querySelector('#df-513d61dc-6249-4d94-bf66-a0ac071da978 button.colab-df-convert');\n",
              "      buttonEl.style.display =\n",
              "        google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "\n",
              "      async function convertToInteractive(key) {\n",
              "        const element = document.querySelector('#df-513d61dc-6249-4d94-bf66-a0ac071da978');\n",
              "        const dataTable =\n",
              "          await google.colab.kernel.invokeFunction('convertToInteractive',\n",
              "                                                    [key], {});\n",
              "        if (!dataTable) return;\n",
              "\n",
              "        const docLinkHtml = 'Like what you see? Visit the ' +\n",
              "          '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n",
              "          + ' to learn more about interactive tables.';\n",
              "        element.innerHTML = '';\n",
              "        dataTable['output_type'] = 'display_data';\n",
              "        await google.colab.output.renderOutput(dataTable, element);\n",
              "        const docLink = document.createElement('div');\n",
              "        docLink.innerHTML = docLinkHtml;\n",
              "        element.appendChild(docLink);\n",
              "      }\n",
              "    </script>\n",
              "  </div>\n",
              "\n",
              "\n",
              "<div id=\"df-32edd328-c680-49b3-9ded-e286fecbff34\">\n",
              "  <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-32edd328-c680-49b3-9ded-e286fecbff34')\"\n",
              "            title=\"Suggest charts\"\n",
              "            style=\"display:none;\">\n",
              "\n",
              "<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n",
              "     width=\"24px\">\n",
              "    <g>\n",
              "        <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n",
              "    </g>\n",
              "</svg>\n",
              "  </button>\n",
              "\n",
              "<style>\n",
              "  .colab-df-quickchart {\n",
              "      --bg-color: #E8F0FE;\n",
              "      --fill-color: #1967D2;\n",
              "      --hover-bg-color: #E2EBFA;\n",
              "      --hover-fill-color: #174EA6;\n",
              "      --disabled-fill-color: #AAA;\n",
              "      --disabled-bg-color: #DDD;\n",
              "  }\n",
              "\n",
              "  [theme=dark] .colab-df-quickchart {\n",
              "      --bg-color: #3B4455;\n",
              "      --fill-color: #D2E3FC;\n",
              "      --hover-bg-color: #434B5C;\n",
              "      --hover-fill-color: #FFFFFF;\n",
              "      --disabled-bg-color: #3B4455;\n",
              "      --disabled-fill-color: #666;\n",
              "  }\n",
              "\n",
              "  .colab-df-quickchart {\n",
              "    background-color: var(--bg-color);\n",
              "    border: none;\n",
              "    border-radius: 50%;\n",
              "    cursor: pointer;\n",
              "    display: none;\n",
              "    fill: var(--fill-color);\n",
              "    height: 32px;\n",
              "    padding: 0;\n",
              "    width: 32px;\n",
              "  }\n",
              "\n",
              "  .colab-df-quickchart:hover {\n",
              "    background-color: var(--hover-bg-color);\n",
              "    box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "    fill: var(--button-hover-fill-color);\n",
              "  }\n",
              "\n",
              "  .colab-df-quickchart-complete:disabled,\n",
              "  .colab-df-quickchart-complete:disabled:hover {\n",
              "    background-color: var(--disabled-bg-color);\n",
              "    fill: var(--disabled-fill-color);\n",
              "    box-shadow: none;\n",
              "  }\n",
              "\n",
              "  .colab-df-spinner {\n",
              "    border: 2px solid var(--fill-color);\n",
              "    border-color: transparent;\n",
              "    border-bottom-color: var(--fill-color);\n",
              "    animation:\n",
              "      spin 1s steps(1) infinite;\n",
              "  }\n",
              "\n",
              "  @keyframes spin {\n",
              "    0% {\n",
              "      border-color: transparent;\n",
              "      border-bottom-color: var(--fill-color);\n",
              "      border-left-color: var(--fill-color);\n",
              "    }\n",
              "    20% {\n",
              "      border-color: transparent;\n",
              "      border-left-color: var(--fill-color);\n",
              "      border-top-color: var(--fill-color);\n",
              "    }\n",
              "    30% {\n",
              "      border-color: transparent;\n",
              "      border-left-color: var(--fill-color);\n",
              "      border-top-color: var(--fill-color);\n",
              "      border-right-color: var(--fill-color);\n",
              "    }\n",
              "    40% {\n",
              "      border-color: transparent;\n",
              "      border-right-color: var(--fill-color);\n",
              "      border-top-color: var(--fill-color);\n",
              "    }\n",
              "    60% {\n",
              "      border-color: transparent;\n",
              "      border-right-color: var(--fill-color);\n",
              "    }\n",
              "    80% {\n",
              "      border-color: transparent;\n",
              "      border-right-color: var(--fill-color);\n",
              "      border-bottom-color: var(--fill-color);\n",
              "    }\n",
              "    90% {\n",
              "      border-color: transparent;\n",
              "      border-bottom-color: var(--fill-color);\n",
              "    }\n",
              "  }\n",
              "</style>\n",
              "\n",
              "  <script>\n",
              "    async function quickchart(key) {\n",
              "      const quickchartButtonEl =\n",
              "        document.querySelector('#' + key + ' button');\n",
              "      quickchartButtonEl.disabled = true;  // To prevent multiple clicks.\n",
              "      quickchartButtonEl.classList.add('colab-df-spinner');\n",
              "      try {\n",
              "        const charts = await google.colab.kernel.invokeFunction(\n",
              "            'suggestCharts', [key], {});\n",
              "      } catch (error) {\n",
              "        console.error('Error during call to suggestCharts:', error);\n",
              "      }\n",
              "      quickchartButtonEl.classList.remove('colab-df-spinner');\n",
              "      quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n",
              "    }\n",
              "    (() => {\n",
              "      let quickchartButtonEl =\n",
              "        document.querySelector('#df-32edd328-c680-49b3-9ded-e286fecbff34 button');\n",
              "      quickchartButtonEl.style.display =\n",
              "        google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "    })();\n",
              "  </script>\n",
              "</div>\n",
              "\n",
              "  <div id=\"id_7b9fd717-77d6-47a1-ad4d-f49c5d693b60\">\n",
              "    <style>\n",
              "      .colab-df-generate {\n",
              "        background-color: #E8F0FE;\n",
              "        border: none;\n",
              "        border-radius: 50%;\n",
              "        cursor: pointer;\n",
              "        display: none;\n",
              "        fill: #1967D2;\n",
              "        height: 32px;\n",
              "        padding: 0 0 0 0;\n",
              "        width: 32px;\n",
              "      }\n",
              "\n",
              "      .colab-df-generate:hover {\n",
              "        background-color: #E2EBFA;\n",
              "        box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "        fill: #174EA6;\n",
              "      }\n",
              "\n",
              "      [theme=dark] .colab-df-generate {\n",
              "        background-color: #3B4455;\n",
              "        fill: #D2E3FC;\n",
              "      }\n",
              "\n",
              "      [theme=dark] .colab-df-generate:hover {\n",
              "        background-color: #434B5C;\n",
              "        box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
              "        filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
              "        fill: #FFFFFF;\n",
              "      }\n",
              "    </style>\n",
              "    <button class=\"colab-df-generate\" onclick=\"generateWithVariable('shifted_df')\"\n",
              "            title=\"Generate code using this dataframe.\"\n",
              "            style=\"display:none;\">\n",
              "\n",
              "  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n",
              "       width=\"24px\">\n",
              "    <path d=\"M7,19H8.4L18.45,9,17,7.55,7,17.6ZM5,21V16.75L18.45,3.32a2,2,0,0,1,2.83,0l1.4,1.43a1.91,1.91,0,0,1,.58,1.4,1.91,1.91,0,0,1-.58,1.4L9.25,21ZM18.45,9,17,7.55Zm-12,3A5.31,5.31,0,0,0,4.9,8.1,5.31,5.31,0,0,0,1,6.5,5.31,5.31,0,0,0,4.9,4.9,5.31,5.31,0,0,0,6.5,1,5.31,5.31,0,0,0,8.1,4.9,5.31,5.31,0,0,0,12,6.5,5.46,5.46,0,0,0,6.5,12Z\"/>\n",
              "  </svg>\n",
              "    </button>\n",
              "    <script>\n",
              "      (() => {\n",
              "      const buttonEl =\n",
              "        document.querySelector('#id_7b9fd717-77d6-47a1-ad4d-f49c5d693b60 button.colab-df-generate');\n",
              "      buttonEl.style.display =\n",
              "        google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "\n",
              "      buttonEl.onclick = () => {\n",
              "        google.colab.notebook.generateWithVariable('shifted_df');\n",
              "      }\n",
              "      })();\n",
              "    </script>\n",
              "  </div>\n",
              "\n",
              "    </div>\n",
              "  </div>\n"
            ],
            "application/vnd.google.colaboratory.intrinsic+json": {
              "type": "dataframe",
              "variable_name": "shifted_df",
              "summary": "{\n  \"name\": \"shifted_df\",\n  \"rows\": 6509,\n  \"fields\": [\n    {\n      \"column\": \"Date\",\n      \"properties\": {\n        \"dtype\": \"date\",\n        \"min\": \"1997-05-27 00:00:00\",\n        \"max\": \"2023-04-05 00:00:00\",\n        \"num_unique_values\": 6509,\n        \"samples\": [\n          \"2002-06-05 00:00:00\",\n          \"2013-02-07 00:00:00\",\n          \"2014-01-31 00:00:00\"\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Close\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 48.07497434062557,\n        \"min\": 0.070833,\n        \"max\": 186.570496,\n        \"num_unique_values\": 5893,\n        \"samples\": [\n          11.3005,\n          88.416496,\n          12.6685\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Close(t-1)\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 48.06885132421027,\n        \"min\": 0.070833,\n        \"max\": 186.570496,\n        \"num_unique_values\": 5892,\n        \"samples\": [\n          154.726501,\n          90.943001,\n          3.1215\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Close(t-2)\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 48.062076825637476,\n        \"min\": 0.069792,\n        \"max\": 186.570496,\n        \"num_unique_values\": 5892,\n        \"samples\": [\n          157.307007,\n          91.035004,\n          3.2235\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Close(t-3)\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 48.05564844925918,\n        \"min\": 0.069792,\n        \"max\": 186.570496,\n        \"num_unique_values\": 5892,\n        \"samples\": [\n          154.6465,\n          90.698997,\n          3.3925\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Close(t-4)\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 48.049012426866724,\n        \"min\": 0.069792,\n        \"max\": 186.570496,\n        \"num_unique_values\": 5892,\n        \"samples\": [\n          152.858002,\n          90.709503,\n          3.5435\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Close(t-5)\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 48.04266319641631,\n        \"min\": 0.069792,\n        \"max\": 186.570496,\n        \"num_unique_values\": 5892,\n        \"samples\": [\n          157.976501,\n          89.037498,\n          3.5845\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Close(t-6)\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 48.03669744551472,\n        \"min\": 0.069792,\n        \"max\": 186.570496,\n        \"num_unique_values\": 5892,\n        \"samples\": [\n          159.725006,\n          88.670998,\n          3.6635\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"Close(t-7)\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 48.031372161536694,\n        \"min\": 0.069792,\n        \"max\": 186.570496,\n        \"num_unique_values\": 5892,\n        \"samples\": [\n          159.037003,\n          88.285004,\n          3.495\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    }\n  ]\n}"
            }
          },
          "metadata": {},
          "execution_count": 11
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "### 7. Transformando o DataFrame em um array NumPy"
      ],
      "metadata": {
        "id": "cHAyc3F8wodY"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "shifted_df_as_np = shifted_df.to_numpy()\n",
        "shifted_df_as_np"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "v3PdWSkcq14j",
        "outputId": "7b292d28-c57e-4edb-ab40-f7ae11a23b8c"
      },
      "execution_count": 12,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "array([[7.91670000e-02, 7.50000000e-02, 6.97920000e-02, ...,\n",
              "        8.54170000e-02, 8.64580000e-02, 9.79170000e-02],\n",
              "       [7.65630000e-02, 7.91670000e-02, 7.50000000e-02, ...,\n",
              "        8.17710000e-02, 8.54170000e-02, 8.64580000e-02],\n",
              "       [7.52600000e-02, 7.65630000e-02, 7.91670000e-02, ...,\n",
              "        7.13540000e-02, 8.17710000e-02, 8.54170000e-02],\n",
              "       ...,\n",
              "       [1.02410004e+02, 1.03290001e+02, 1.02000000e+02, ...,\n",
              "        9.80400010e+01, 9.81299970e+01, 9.87099990e+01],\n",
              "       [1.03949997e+02, 1.02410004e+02, 1.03290001e+02, ...,\n",
              "        9.72399980e+01, 9.80400010e+01, 9.81299970e+01],\n",
              "       [1.01099998e+02, 1.03949997e+02, 1.02410004e+02, ...,\n",
              "        1.00250000e+02, 9.72399980e+01, 9.80400010e+01]])"
            ]
          },
          "metadata": {},
          "execution_count": 12
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "shifted_df_as_np.shape"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "WPsZP8POw4eG",
        "outputId": "4c5960d0-5e6e-47fc-c96e-20d3c6fe008a"
      },
      "execution_count": 13,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "(6509, 8)"
            ]
          },
          "metadata": {},
          "execution_count": 13
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "### 8. Padronizando os dados do DataFrame"
      ],
      "metadata": {
        "id": "OwDrO74rxQeZ"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "from sklearn.preprocessing import MinMaxScaler\n",
        "\n",
        "scaler = MinMaxScaler(feature_range=(-1, 1))\n",
        "shifted_df_as_np = scaler.fit_transform(shifted_df_as_np)\n",
        "shifted_df_as_np"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "4tfeVoq-w50b",
        "outputId": "d633a3f7-6853-4076-ba30-5cae75e48639"
      },
      "execution_count": 14,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "array([[-0.99991063, -0.99995531, -1.        , ..., -0.99983244,\n",
              "        -0.99982128, -0.99969839],\n",
              "       [-0.99993855, -0.99991063, -0.99994415, ..., -0.99987154,\n",
              "        -0.99983244, -0.99982128],\n",
              "       [-0.99995253, -0.99993855, -0.99989946, ..., -0.99998325,\n",
              "        -0.99987154, -0.99983244],\n",
              "       ...,\n",
              "       [ 0.09747299,  0.10690997,  0.09308121, ...,  0.0506149 ,\n",
              "         0.05158   ,  0.05779984],\n",
              "       [ 0.11398769,  0.09747299,  0.10691495, ...,  0.04203581,\n",
              "         0.0506149 ,  0.05158   ],\n",
              "       [ 0.08342464,  0.11398769,  0.09747802, ...,  0.07431453,\n",
              "         0.04203581,  0.0506149 ]])"
            ]
          },
          "metadata": {},
          "execution_count": 14
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "X = shifted_df_as_np[:, 1:]\n",
        "y = shifted_df_as_np[:, 0]\n",
        "X.shape, y.shape"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "n9mxE3kCxjCT",
        "outputId": "944bd8fe-ab20-4337-d70a-f3465505563f"
      },
      "execution_count": 15,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "((6509, 7), (6509,))"
            ]
          },
          "metadata": {},
          "execution_count": 15
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "# Processamento de séries temporais: Em problemas de séries temporais,\n",
        "# pode ser útil inverter as sequências temporais para que os dados mais\n",
        "# recentes fiquem no início da sequência.\n",
        "\n",
        "X = dc(np.flip(X, axis=1))\n",
        "X"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "_HWRibnPyIRb",
        "outputId": "7e066def-45d6-44fa-f689-77766308ca37"
      },
      "execution_count": 16,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "array([[-0.99969839, -0.99982128, -0.99983244, ..., -0.99998325,\n",
              "        -1.        , -0.99995531],\n",
              "       [-0.99982128, -0.99983244, -0.99987154, ..., -1.        ,\n",
              "        -0.99994415, -0.99991063],\n",
              "       [-0.99983244, -0.99987154, -0.99998325, ..., -0.99994415,\n",
              "        -0.99989946, -0.99993855],\n",
              "       ...,\n",
              "       [ 0.05779984,  0.05158   ,  0.0506149 , ...,  0.07431453,\n",
              "         0.09308121,  0.10690997],\n",
              "       [ 0.05158   ,  0.0506149 ,  0.04203581, ...,  0.09308121,\n",
              "         0.10691495,  0.09747299],\n",
              "       [ 0.0506149 ,  0.04203581,  0.07431453, ...,  0.10691495,\n",
              "         0.09747802,  0.11398769]])"
            ]
          },
          "metadata": {},
          "execution_count": 16
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "### 9. Divisão do dataset em treino e teste: (95%) dos dados em treino."
      ],
      "metadata": {
        "id": "ge3idoJ9yfTt"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "split_index = int(len(X) * 0.95)\n",
        "split_index"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "sGcGIhrbysrd",
        "outputId": "cd2bda3e-cbd6-4cac-e51c-104a93518bf7"
      },
      "execution_count": 58,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "6183"
            ]
          },
          "metadata": {},
          "execution_count": 58
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "X_train = X[:split_index]\n",
        "X_test = X[split_index:]\n",
        "\n",
        "y_train = y[:split_index]\n",
        "y_test = y[split_index:]\n",
        "\n",
        "X_train.shape, X_test.shape, y_train.shape, y_test.shape"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "sjViHAPqyvf8",
        "outputId": "30708306-5055-46a2-82d6-e0e58647a2dc"
      },
      "execution_count": 59,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "((6183, 7), (326, 7), (6183,), (326,))"
            ]
          },
          "metadata": {},
          "execution_count": 59
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "X_train = X_train.reshape((-1, lookback, 1))\n",
        "X_test = X_test.reshape((-1, lookback, 1))\n",
        "\n",
        "y_train = y_train.reshape((-1, 1))\n",
        "y_test = y_test.reshape((-1, 1))\n",
        "\n",
        "X_train.shape, X_test.shape, y_train.shape, y_test.shape"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "FoSEWOouy5md",
        "outputId": "48aa0b67-7911-4980-8d86-b7b4cf1b8813"
      },
      "execution_count": 60,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "((6183, 7, 1), (326, 7, 1), (6183, 1), (326, 1))"
            ]
          },
          "metadata": {},
          "execution_count": 60
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "### 10. Transformando os valores para tensores"
      ],
      "metadata": {
        "id": "jLDOKSNIy9kT"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "X_train = torch.tensor(X_train).float()\n",
        "y_train = torch.tensor(y_train).float()\n",
        "X_test = torch.tensor(X_test).float()\n",
        "y_test = torch.tensor(y_test).float()\n",
        "\n",
        "X_train.shape, X_test.shape, y_train.shape, y_test.shape"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "fI2RMO8jzEj2",
        "outputId": "1305d2c2-d90f-4d2c-9b5f-76ebfd1307ea"
      },
      "execution_count": 61,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "(torch.Size([6183, 7, 1]),\n",
              " torch.Size([326, 7, 1]),\n",
              " torch.Size([6183, 1]),\n",
              " torch.Size([326, 1]))"
            ]
          },
          "metadata": {},
          "execution_count": 61
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "### 11. Carregando os DataLoaders em treino e teste."
      ],
      "metadata": {
        "id": "IU-G2YBgzNgc"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "from torch.utils.data import Dataset\n",
        "\n",
        "class TimeSeriesDataset(Dataset):\n",
        "    def __init__(self, X, y):\n",
        "        self.X = X\n",
        "        self.y = y\n",
        "\n",
        "    def __len__(self):\n",
        "        return len(self.X)\n",
        "\n",
        "    def __getitem__(self, i):\n",
        "        return self.X[i], self.y[i]\n",
        "\n",
        "train_dataset = TimeSeriesDataset(X_train, y_train)\n",
        "test_dataset = TimeSeriesDataset(X_test, y_test)"
      ],
      "metadata": {
        "id": "1ciwPBZnzXoS"
      },
      "execution_count": 62,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "train_dataset"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "CqWdG1t9zhvY",
        "outputId": "800b4bcf-84cd-48fb-ea08-d1f14308f710"
      },
      "execution_count": 63,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "<__main__.TimeSeriesDataset at 0x7ddbce4998a0>"
            ]
          },
          "metadata": {},
          "execution_count": 63
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "from torch.utils.data import DataLoader\n",
        "\n",
        "batch_size = 16\n",
        "\n",
        "train_loader = DataLoader(train_dataset, batch_size=batch_size, shuffle=True)\n",
        "test_loader = DataLoader(test_dataset, batch_size=batch_size, shuffle=False)"
      ],
      "metadata": {
        "id": "sZnAsgIPzjjW"
      },
      "execution_count": 64,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "for _, batch in enumerate(train_loader):\n",
        "    x_batch, y_batch = batch[0].to(device), batch[1].to(device)\n",
        "    print(x_batch.shape, y_batch.shape)\n",
        "    break"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "oUt1ER-4zuy5",
        "outputId": "2acac805-73f0-45fc-bfbd-1fea4a38d967"
      },
      "execution_count": 65,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "torch.Size([16, 7, 1]) torch.Size([16, 1])\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "### 12. Criando o modelo LSTM"
      ],
      "metadata": {
        "id": "nejJL6-KzyWV"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "class LSTM(nn.Module):\n",
        "    def __init__(self, input_size, hidden_size, num_stacked_layers):\n",
        "        super().__init__()\n",
        "        self.hidden_size = hidden_size\n",
        "        self.num_stacked_layers = num_stacked_layers\n",
        "\n",
        "        self.lstm = nn.LSTM(input_size, hidden_size, num_stacked_layers,\n",
        "                            batch_first=True)\n",
        "\n",
        "        self.fc = nn.Linear(hidden_size, 1)\n",
        "\n",
        "    def forward(self, x):\n",
        "        batch_size = x.size(0)\n",
        "        h0 = torch.zeros(self.num_stacked_layers, batch_size, self.hidden_size).to(device)\n",
        "        c0 = torch.zeros(self.num_stacked_layers, batch_size, self.hidden_size).to(device)\n",
        "\n",
        "        out, _ = self.lstm(x, (h0, c0))\n",
        "        out = self.fc(out[:, -1, :])\n",
        "        return out\n",
        "\n",
        "model = LSTM(1, 4, 1)\n",
        "model.to(device)\n",
        "model"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "aPpSYdxhz5j9",
        "outputId": "72213808-8991-4571-a018-9c4071e9ccd5"
      },
      "execution_count": 66,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "LSTM(\n",
              "  (lstm): LSTM(1, 4, batch_first=True)\n",
              "  (fc): Linear(in_features=4, out_features=1, bias=True)\n",
              ")"
            ]
          },
          "metadata": {},
          "execution_count": 66
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "### 13. Definindo função de treino e validação"
      ],
      "metadata": {
        "id": "IHo6VYQn0G2m"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "def train_one_epoch():\n",
        "    model.train(True)\n",
        "    print(f'Epoch: {epoch + 1}')\n",
        "    running_loss = 0.0\n",
        "\n",
        "    for batch_index, batch in enumerate(train_loader):\n",
        "        x_batch, y_batch = batch[0].to(device), batch[1].to(device)\n",
        "\n",
        "        output = model(x_batch)\n",
        "        loss = loss_function(output, y_batch)\n",
        "        running_loss += loss.item()\n",
        "\n",
        "        optimizer.zero_grad()\n",
        "        loss.backward()\n",
        "        optimizer.step()\n",
        "\n",
        "        if batch_index % 100 == 99:  # print every 100 batches\n",
        "            avg_loss_across_batches = running_loss / 100\n",
        "            print('Batch {0}, Loss: {1:.3f}'.format(batch_index+1,\n",
        "                                                    avg_loss_across_batches))\n",
        "            running_loss = 0.0\n",
        "    print()"
      ],
      "metadata": {
        "id": "Y6tRabkL0MuK"
      },
      "execution_count": 67,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "def validate_one_epoch():\n",
        "    model.train(False)\n",
        "    running_loss = 0.0\n",
        "\n",
        "    for batch_index, batch in enumerate(test_loader):\n",
        "        x_batch, y_batch = batch[0].to(device), batch[1].to(device)\n",
        "\n",
        "        with torch.no_grad():\n",
        "            output = model(x_batch)\n",
        "            loss = loss_function(output, y_batch)\n",
        "            running_loss += loss.item()\n",
        "\n",
        "    avg_loss_across_batches = running_loss / len(test_loader)\n",
        "\n",
        "    print('Val Loss: {0:.3f}'.format(avg_loss_across_batches))\n",
        "    print('***************************************************')\n",
        "    print()"
      ],
      "metadata": {
        "id": "zFdq8dnN0QYQ"
      },
      "execution_count": 68,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "learning_rate = 0.001\n",
        "num_epochs = 10\n",
        "loss_function = nn.MSELoss()\n",
        "optimizer = torch.optim.Adam(model.parameters(), lr=learning_rate)\n",
        "\n",
        "for epoch in range(num_epochs):\n",
        "    train_one_epoch()\n",
        "    validate_one_epoch()"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "xJufrUFe0SIf",
        "outputId": "23a9ff74-464a-4a71-d244-d94618550ae5"
      },
      "execution_count": 69,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Epoch: 1\n",
            "Batch 100, Loss: 0.820\n",
            "Batch 200, Loss: 0.394\n",
            "Batch 300, Loss: 0.103\n",
            "\n",
            "Val Loss: 0.097\n",
            "***************************************************\n",
            "\n",
            "Epoch: 2\n",
            "Batch 100, Loss: 0.021\n",
            "Batch 200, Loss: 0.015\n",
            "Batch 300, Loss: 0.011\n",
            "\n",
            "Val Loss: 0.016\n",
            "***************************************************\n",
            "\n",
            "Epoch: 3\n",
            "Batch 100, Loss: 0.004\n",
            "Batch 200, Loss: 0.002\n",
            "Batch 300, Loss: 0.002\n",
            "\n",
            "Val Loss: 0.017\n",
            "***************************************************\n",
            "\n",
            "Epoch: 4\n",
            "Batch 100, Loss: 0.001\n",
            "Batch 200, Loss: 0.001\n",
            "Batch 300, Loss: 0.001\n",
            "\n",
            "Val Loss: 0.009\n",
            "***************************************************\n",
            "\n",
            "Epoch: 5\n",
            "Batch 100, Loss: 0.001\n",
            "Batch 200, Loss: 0.001\n",
            "Batch 300, Loss: 0.001\n",
            "\n",
            "Val Loss: 0.008\n",
            "***************************************************\n",
            "\n",
            "Epoch: 6\n",
            "Batch 100, Loss: 0.000\n",
            "Batch 200, Loss: 0.000\n",
            "Batch 300, Loss: 0.000\n",
            "\n",
            "Val Loss: 0.006\n",
            "***************************************************\n",
            "\n",
            "Epoch: 7\n",
            "Batch 100, Loss: 0.000\n",
            "Batch 200, Loss: 0.000\n",
            "Batch 300, Loss: 0.000\n",
            "\n",
            "Val Loss: 0.005\n",
            "***************************************************\n",
            "\n",
            "Epoch: 8\n",
            "Batch 100, Loss: 0.000\n",
            "Batch 200, Loss: 0.000\n",
            "Batch 300, Loss: 0.000\n",
            "\n",
            "Val Loss: 0.005\n",
            "***************************************************\n",
            "\n",
            "Epoch: 9\n",
            "Batch 100, Loss: 0.000\n",
            "Batch 200, Loss: 0.000\n",
            "Batch 300, Loss: 0.000\n",
            "\n",
            "Val Loss: 0.004\n",
            "***************************************************\n",
            "\n",
            "Epoch: 10\n",
            "Batch 100, Loss: 0.000\n",
            "Batch 200, Loss: 0.000\n",
            "Batch 300, Loss: 0.000\n",
            "\n",
            "Val Loss: 0.004\n",
            "***************************************************\n",
            "\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "### 14. Predição do Modelo"
      ],
      "metadata": {
        "id": "MqKVSK_G0fo1"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "with torch.no_grad():\n",
        "    predicted = model(X_train.to(device)).to('cpu').numpy()\n",
        "\n",
        "plt.plot(y_train, label='Actual Close')\n",
        "plt.plot(predicted, label='Predicted Close')\n",
        "plt.xlabel('Day')\n",
        "plt.ylabel('Close')\n",
        "plt.legend()\n",
        "plt.show()"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 449
        },
        "id": "ZncKXDAs0Um_",
        "outputId": "4e837bdf-37af-4fb5-a966-136e42380ed4"
      },
      "execution_count": 70,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 640x480 with 1 Axes>"
            ],
            "image/png": "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Db3QujOqdFjq3r27u6fjtKVLl9K9e3cgd1Xtzp07s2zZMq6//noAXC4Xy5YtY8SIEWXSJn9fK1uf7l0mxy7OdxfXjh07WLNmDV988QUAPj4+3HbbbcyYMcMdljZs2FDiXqPiSEhI4Mknn2TFihUkJibidDpJT09n3759xdr/XLtyt23bRmxsrEdv1IUXXojL5WLHjh1ccsklDBo0iN69e3PFFVcQFxfHrbfe6n4G28aNG/npp5949tln3fs7nU4yMzNJT0/X425ERP7GddbP66OpWR7bXlu+i22HUxj75e8KSyWRmprKrl273J93797Nhg0bqFmzJvXr12fMmDEcPHiQOXPmAHDvvffy+uuvM3r0aO6++26WL1/Op59+ysKFC93HGDlyJAMHDqRLly507dqVV155hbS0NAYPHlwm52AYRomGwrxlxowZOBwOoqOj3WWmaWK323n99dcJCQlxP4esJCwWS54w8/fHcgwcOJBjx47x6quv0qBBA+x2O927dyc7O7tY39GsWTMMw2D79u0lbl9R3nvvPR588EEWLVrEJ598wpNPPsnSpUs5//zzSU1NZcKECdx444159vPzq5hdyyIi3lTYXXDOCjSHqVJN8P7111/p2LEjHTt2BHKDTseOHRk7diwAhw8f9uh9aNSoEQsXLmTp0qXExsby8ssv8+6779K795mendtuu42XXnqJsWPH0qFDBzZs2MCiRYvyTPquThwOB3PmzOHll19mw4YN7tfGjRuJjo7mo48+AqB9+/aF3oZvs9ncz8Y7LTw8nPj4eI/AtGHDBo86P/30Ew8++CB9+/alTZs22O12jh49Wuz216xZk969ezNt2jTS0tLybE9KSsp3v1atWrFx40aPfX766ScsFgstWrRwl3Xs2JExY8bw888/07ZtWz788EMAOnXqxI4dO2jatGmel8VSqf6qiYiUi8JWDPCxVJxHN1X8Lo6z9OjRo9Ahlvzu1urRowe//fZboccdMWJEmQ27VUYLFizgxIkTDBkyhJCQEI9tN910EzNmzODee+9l3Lhx9OzZkyZNmtCvXz8cDgdff/01jz/+OJC7ztL3339Pv379sNvt1K5dmx49enDkyBFeeOEFbr75ZhYtWsQ333xDcHCw+zuaNWvGf//7X7p06UJKSgqPPfZYiXuxpk2bxoUXXkjXrl15+umnad++PQ6H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umHDBqxWa4lCwa5du0hPT+eKK67wKM/OznaHkG3btnm0A3CHkYIU9sDHwmzbto3rrrvOo+zCCy/klVdewel0csUVV9CgQQMaN25Mnz596NOnDzfccAMBAQHFOhcRkYqguD1Lt7/zC+mn5iTVMzzDku9ZPU3BRpr7fYyRSEa2E3+btRRaWnIKS+XNNyC3h8db310Cl112GW+++SY2m43o6Gh8fDz/uAQGevZSpaam0rlzZz744IM8xwoPDy95e8E9rFYSqampACxcuJC6det6bLPb7efUDsjtEQLYvn17kcGqJIKCgli/fj0rVqxgyZIljB07lvHjx7N27doyOxcRkdJmMQwST2YSEeRXaL30syZv/71nyWbkuFemrEGGuzyYdOJTMmlUu+SjI6VBYam8GcY5DYV5Q2BgIE2bNi12/U6dOvHJJ58QERFBcHBwvnXq1KnD6tWrueSSSwBwOBysW7eOTp065Vu/Xbt2uFwuVq5c6R6GO9vpni2n88xfvtatW2O329m3b1+BPVKtWrVyT1Y/7Zdffin0/Hr16kXt2rV54YUX+OKLL/JsT0pKynfeUqtWrfjpp588yn766SeaN2+O1Zr7ryQfHx/i4uKIi4tj3LhxhIaGsnz5cq644ooiz0VExFvO7nHfejiFrs8u47kb2nFHt/rF2v/vYcmXMz/Laxon3e+DDS/N9T1Fd8NJqenfvz+1a9fmuuuu44cffmD37t2sWLGCBx98kAMHcm8Nfeihh3j++eeZN28e27dv57777it0jaSGDRsycOBA7r77bubNm+c+5qeffgpAgwYNMAyDBQsWcOTIEVJTUwkKCuLRRx/lkUceYfbs2fz555+sX7+e1157jdmzc8e97733Xnbu3Mljjz3Gjh07+PDDD5k1a1ah53d6jtbChQu59tpr+fbbb9mzZw+//voro0eP5t577813v1GjRrFs2TImTpzIH3/8wezZs3n99dd59NFHgdzhzqlTp7Jhwwb27t3LnDlzcLlctGjRoljnIiLiLX9/thvA+K9+L/b+f5/gffbnWqS43weThjcpLEmpCQgI4Pvvv6d+/frceOONtGrViiFDhpCZmenuaRo1ahR33XUXAwcOpHv37gQFBXHDDTcUetw333yTm2++mfvuu4+WLVsydOhQ0tJy/+LUrVuXCRMm8MQTTxAZGcmIESMAmDhxIk89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FxfHzp07PeocP36c/v37ExwcTGhoKEOGDCE1NdWjzqZNm7j44ovx8/MjJiaGF154oaxPrdRMmjSJ8847j6CgICIiIrj++uvZsWOHR53MzEzuv/9+atWqRY0aNbjppptISEjwqLNv3z6uuuoqAgICiIiI4LHHHsPhcHjUWbFiBZ06dcJut9O0aVNmzZpV1qdXKt58803at2/vXuyue/fufPPNN+7t1f36/N3zzz+PYRg8/PDD7rLqfo3Gjx+PYRger5YtW7q3V/frc9rBgwe58847qVWrFv7+/rRr145ff/3Vvb1K/sw2pUL6+OOPTZvNZs6cOdP8/fffzaFDh5qhoaFmQkKCt5tW6r7++mvz//7v/8y5c+eagPnFF194bH/++efNkJAQc968eebGjRvNa6+91mzUqJGZkZHhrtOnTx8zNjbW/OWXX8wffvjBbNq0qXn77be7tycnJ5uRkZFm//79zS1btpgfffSR6e/vb7711lvldZr/SO/evc333nvP3LJli7lhwwazb9++Zv369c3U1FR3nXvvvdeMiYkxly1bZv7666/m+eefb15wwQXu7Q6Hw2zbtq0ZFxdn/vbbb+bXX39t1q5d2xwzZoy7zl9//WUGBASYI0eONLdu3Wq+9tprptVqNRctWlSu53su5s+fby5cuND8448/zB07dpj//ve/TV9fX3PLli2maer6nG3NmjVmw4YNzfbt25sPPfSQu7y6X6Nx48aZbdq0MQ8fPux+HTlyxL29ul8f0zTN48ePmw0aNDAHDRpkrl692vzrr7/MxYsXm7t27XLXqYo/sxWWKqiuXbua999/v/uz0+k0o6OjzUmTJnmxVWXv72HJ5XKZUVFR5osvvuguS0pKMu12u/nRRx+ZpmmaW7duNQFz7dq17jrffPONaRiGefDgQdM0TfONN94ww8LCzKysLHedxx9/3GzRokUZn1HZSExMNAFz5cqVpmnmXhNfX1/zf//7n7vOtm3bTMBctWqVaZq5odRisZjx8fHuOm+++aYZHBzsvi6jR48227Rp4/Fdt912m9m7d++yPqUyERYWZr777ru6Pmc5efKk2axZM3Pp0qXmpZde6g5Luka5YSk2Njbfbbo+uR5//HHzoosuKnB7Vf2ZrWG4Cig7O5t169YRFxfnLrNYLMTFxbFq1Sovtqz87d69m/j4eI9rERISQrdu3dzXYtWqVYSGhtKlSxd3nbi4OCwWC6tXr3bXueSSS7DZbO46vXv3ZseOHZw4caKczqb0JCcnA1CzZk0A1q1bR05Ojsd1atmyJfXr1/e4Tu3atSMyMtJdp3fv3qSkpPD777+765x9jNN1KtufO6fTyccff0xaWhrdu3fX9TnL/fffz1VXXZXnPHSNcu3cuZPo6GgaN25M//792bdvH6Drc9r8+fPp0qULt9xyCxEREXTs2JF33nnHvb2q/sxWWKqAjh49itPp9PgLBxAZGUl8fLyXWuUdp8+3sGsRHx9PRESEx3YfHx9q1qzpUSe/Y5z9HZWFy+Xi4Ycf5sILL6Rt27ZA7jnYbDZCQ0M96v79OhV1DQqqk5KSQkZGRlmcTqnavHkzNWrUwG63c++99/LFF1/QunVrXZ9TPv74Y9avX8+kSZPybNM1gm7dujFr1iwWLVrEm2++ye7du7n44os5efKkrs8pf/31F2+++SbNmjVj8eLFDB8+nAcffJDZs2cDVfdntk+5f6OI/CP3338/W7Zs4ccff/R2UyqcFi1asGHDBpKTk/nss88YOHAgK1eu9HazKoT9+/fz0EMPsXTpUvz8/LzdnArpyiuvdL9v37493bp1o0GDBnz66af4+/t7sWUVh8vlokuXLjz33HMAdOzYkS1btjB9+nQGDhzo5daVHfUsVUC1a9fGarXmucsiISGBqKgoL7XKO06fb2HXIioqisTERI/tDoeD48ePe9TJ7xhnf0dlMGLECBYsWMB3331HvXr13OVRUVFkZ2eTlJTkUf/v16moa1BQneDg4Erxy8Jms9G0aVM6d+7MpEmTiI2N5dVXX9X1IXcYKTExkU6dOuHj44OPjw8rV65k6tSp+Pj4EBkZWe2v0d+FhobSvHlzdu3apT9Dp9SpU4fWrVt7lLVq1co9XFlVf2YrLFVANpuNzp07s2zZMneZy+Vi2bJldO/e3YstK3+NGjUiKirK41qkpKSwevVq97Xo3r07SUlJrFu3zl1n+fLluFwuunXr5q7z/fffk5OT466zdOlSWrRoQVhYWDmdzbkzTZMRI0bwxRdfsHz5cho1auSxvXPnzvj6+npcpx07drBv3z6P67R582aPH1JLly4lODjY/cOve/fuHsc4Xaey/rlzuVxkZWXp+gA9e/Zk8+bNbNiwwf3q0qUL/fv3d7+v7tfo71JTU/nzzz+pU6eO/gydcuGFF+ZZtuSPP/6gQYMGQBX+me2VaeVSpI8//ti02+3mrFmzzK1bt5rDhg0zQ0NDPe6yqCpOnjxp/vbbb+Zvv/1mAuaUKVPM3377zdy7d69pmrm3oYaGhppffvmluWnTJvO6667L9zbUjh07mqtXrzZ//PFHs1mzZh63oSYlJZmRkZHmXXfdZW7ZssX8+OOPzYCAgEqzdMDw4cPNkJAQc8WKFR63Naenp7vr3HvvvWb9+vXN5cuXm7/++qvZvXt3s3v37u7tp29r7tWrl7lhwwZz0aJFZnh4eL63NT/22GPmtm3bzGnTplWa25qfeOIJc+XKlebu3bvNTZs2mU888YRpGIa5ZMkS0zR1ffJz9t1wpqlrNGrUKHPFihXm7t27zZ9++smMi4sza9eubSYmJpqmqetjmrnLTvj4+JjPPvusuXPnTvODDz4wAwICzPfff99dpyr+zFZYqsBee+01s379+qbNZjO7du1q/vLLL95uUpn47rvvTCDPa+DAgaZp5t6K+tRTT5mRkZGm3W43e/bsae7YscPjGMeOHTNvv/12s0aNGmZwcLA5ePBg8+TJkx51Nm7caF500UWm3W4369ataz7//PPldYr/WH7XBzDfe+89d52MjAzzvvvuM8PCwsyAgADzhhtuMA8fPuxxnD179phXXnml6e/vb9auXdscNWqUmZOT41Hnu+++Mzt06GDabDazcePGHt9Rkd19991mgwYNTJvNZoaHh5s9e/Z0ByXT1PXJz9/DUnW/RrfddptZp04d02azmXXr1jVvu+02j/WDqvv1Oe2rr74y27Zta9rtdrNly5bm22+/7bG9Kv7MNkzTNMu/P0tERESkctCcJREREZFCKCyJiIiIFEJhSURERKQQCksiIiIihVBYEhERESmEwpKIiIhIIRSWRERERAqhsCQiIiJSCIUlERERkUIoLIlItTJo0CAMw8AwDHx9fYmMjOSKK65g5syZuFwubzdPRCoghSURqXb69OnD4cOH2bNnD9988w2XXXYZDz30EFdffTUOh8PbzRORCkZhSUSqHbvdTlRUFHXr1qVTp078+9//5ssvv+Sbb75h1qxZAEyZMoV27doRGBhITEwM9913H6mpqQCkpaURHBzMZ5995nHcefPmERgYyMmTJ8v7lESkDCksiYgAl19+ObGxscydOxcAi8XC1KlT+f3335k9ezbLly9n9OjRAAQGBtKvXz/ee+89j2O899573HzzzQQFBZV7+0Wk7BimaZreboSISHkZNGgQSUlJzJs3L8+2fv36sWnTJrZu3Zpn22effca9997L0aNHAVizZg0XXHAB+/fvp06dOiQmJlK3bl2+/fZbLr300rI+DREpR+pZEhE5xTRNDMMA4Ntvv6Vnz57UrVuXoKAg7rrrLo4dO0Z6ejoAXbt2pU2bNsyePRuA999/nwYNGnDJJZd4rf0iUjYUlkRETtm2bRuNGjViz549XH311bRv357PP/+cdevWMW3aNACys7Pd9e+55x73HKf33nuPwYMHu8OWiFQdCksiIsDy5cvZvHkzN910E+vWrcPlcvHyyy9z/vnn07x5cw4dOpRnnzvvvJO9e/cydepUtm7dysCBA73QchEpaz7eboCISHnLysoiPj4ep9NJQkICixYtYtKkSVx99dUMGDCALVu2kJOTw2uvvcY111zDTz/9xPTp0/McJywsjBtvvJHHHnuMXr16Ua9ePS+cjYiUNfUsiUi1s2jRIurUqUPDhg3p06cP3333HVOnTuXLL7/EarUSGxvLlClTmDx5Mm3btuWDDz5g0qRJ+R5ryJAhZGdnc/fdd5fzWYhIedHdcCIi/8B///tfHnnkEQ4dOoTNZvN2c0SkDGgYTkTkHKSnp3P48GGef/55/vWvfykoiVRhGoYTETkHL7zwAi1btiQqKooxY8Z4uzkiUoY0DCciIiJSCPUsiYiIiBRCYUlERESkEApLIiIiIoVQWBIREREphMKSiIiISCEUlkREREQKobAkIiIiUgiFJREREZFC/D/Fy2I6DMlK7AAAAABJRU5ErkJggg==\n"
          },
          "metadata": {}
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "train_predictions = predicted.flatten()\n",
        "\n",
        "dummies = np.zeros((X_train.shape[0], lookback+1))\n",
        "dummies[:, 0] = train_predictions\n",
        "dummies = scaler.inverse_transform(dummies)\n",
        "\n",
        "train_predictions = dc(dummies[:, 0])\n",
        "train_predictions"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "mprwuOr80vKL",
        "outputId": "9cb7e52e-8e02-436f-a40f-f597a07eaf38"
      },
      "execution_count": 71,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "array([  0.55325029,   0.55146058,   0.5506213 , ..., 169.45053203,\n",
              "       168.92421112, 169.16855733])"
            ]
          },
          "metadata": {},
          "execution_count": 71
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "dummies = np.zeros((X_train.shape[0], lookback+1))\n",
        "dummies[:, 0] = y_train.flatten()\n",
        "dummies = scaler.inverse_transform(dummies)\n",
        "\n",
        "new_y_train = dc(dummies[:, 0])\n",
        "new_y_train"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "OYybQpAH0zS2",
        "outputId": "e4e4a90a-cfe5-48f3-8cb7-cb1eb5ecc153"
      },
      "execution_count": 72,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "array([7.91646265e-02, 7.65634249e-02, 7.52572660e-02, ...,\n",
              "       1.69091505e+02, 1.73315001e+02, 1.68871003e+02])"
            ]
          },
          "metadata": {},
          "execution_count": 72
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "plt.plot(new_y_train, label='Actual Close')\n",
        "plt.plot(train_predictions, label='Predicted Close')\n",
        "plt.xlabel('Day')\n",
        "plt.ylabel('Close')\n",
        "plt.legend()\n",
        "plt.show()"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 449
        },
        "id": "r627iNz70_5D",
        "outputId": "335a8eb8-c9c5-4b40-cbee-0c04881ad0e6"
      },
      "execution_count": 73,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 640x480 with 1 Axes>"
            ],
            "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjsAAAGwCAYAAABPSaTdAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAABssUlEQVR4nO3dd3wUdf7H8ddsTSGFACEJhF6lREBALAgCUuxiRwX1wAJ6imfBnyLYQDk9RVHPE8GODUFRUQQpIl0RkCIgTSD09GST3Z3fH4GFNQkhIckmm/fz8djH7c58Z/KZMZd9853vfMcwTdNEREREJEhZAl2AiIiISHlS2BEREZGgprAjIiIiQU1hR0RERIKawo6IiIgENYUdERERCWoKOyIiIhLUbIEuoDLwer3s2bOHiIgIDMMIdDkiIiJyCkzTJD09nYSEBCyWovtvFHaAPXv2kJiYGOgyREREpBR27dpF/fr1i1yvsANEREQA+ScrMjIywNWIiIjIqUhLSyMxMdH3PV4UhR3wXbqKjIxU2BEREaliihuCogHKIiIiEtQUdkRERCSoKeyIiIhIUNOYnVPk9XrJzc0NdBkS5Ox2O1arNdBliIgEFYWdU5Cbm8u2bdvwer2BLkWqgejoaOLi4jTnk4hIGVHYKYZpmuzduxer1UpiYuJJJy0SOR2maZKVlcX+/fsBiI+PD3BFIiLBQWGnGG63m6ysLBISEggLCwt0ORLkQkNDAdi/fz+xsbG6pCUiUgbUTVEMj8cDgMPhCHAlUl0cC9V5eXkBrkREJDgo7JwijZ+QiqLfNRGRsqWwIyIiIkFNYUdERESCmsKOBIRhGMyYMaPS7EdERIKXwk6QW7JkCVarlYsvvrjE2zZq1IiXXnqp7Is6RcnJydxzzz00adIEp9NJYmIil156KXPnzg1YTSIi4i8nz4PXawa6jJNS2AlykydP5p577mHhwoXs2bMn0OWcsu3bt9OpUyfmzZvHhAkTWLt2LbNnz6Znz54MHz480OWJiAiQlpNHp6fmcP2bSwNdykkp7JSQaZpk5boD8jLNkiXnjIwMPv74Y+666y4uvvhipk6dWqDNV199RefOnQkJCaF27dpceeWVAPTo0YMdO3Zw//33YxiG7w6hMWPGcOaZZ/rt46WXXqJRo0a+zytWrKBPnz7Url2bqKgoLrjgAn755ZcS1X733XdjGAbLly9n4MCBtGjRgjZt2jBy5EiWLi36/1Rr167lwgsvJDQ0lFq1ajFs2DAyMjJ86+fPn0+XLl0IDw8nOjqac889lx07dvjWz5w5k44dOxISEkKTJk0YO3Ysbre7RLWLiFQXP20+SGauh+XbD5f4O6oiaVLBEsrO83DG6O8C8rPXP9mXMMep/yf75JNPaNWqFS1btuSmm27ivvvuY9SoUb7g8vXXX3PllVfyf//3f7z77rvk5ubyzTffADB9+nSSkpIYNmwYQ4cOLVGd6enpDB48mFdeeQXTNHnhhRcYMGAAmzdvJiIiotjtDx8+zOzZs3nmmWcIDw8vsD46OrrQ7TIzM+nbty/dunVjxYoV7N+/n3/84x+MGDGCqVOn4na7ueKKKxg6dCgfffQRubm5LF++3Hc+Fi1axC233MLEiRM5//zz2bp1K8OGDQPgiSeeKNE5EBGpDupEOH3vD2S4iI0ICWA1RVPYCWKTJ0/mpptuAqBfv36kpqayYMECevToAcAzzzzD9ddfz9ixY33bJCUlARATE4PVaiUiIoK4uLgS/dwLL7zQ7/Obb75JdHQ0CxYs4JJLLil2+y1btmCaJq1atSrRz/3www/Jycnh3Xff9YWkV199lUsvvZTnnnsOu91Oamoql1xyCU2bNgWgdevWvu3Hjh3LI488wuDBgwFo0qQJTz31FA899JDCjohIIezW4xeIBrz8Eysf6+37vD8th8FTVnBDl0Ru6dYoANUdp7BTQqF2K+uf7Buwn32qNm3axPLly/niiy8AsNlsXHfddUyePNkXdlavXl3iXptTsW/fPh577DHmz5/P/v378Xg8ZGVlsXPnzlPavrRdoRs2bCApKcmvN+jcc8/F6/WyadMmunfvzpAhQ+jbty99+vShd+/eXHvttb5nUP32228sXryYZ555xre9x+MhJyeHrKwsPS5ERORvvCf8vT6Y4fJb98q8LWzYm8bomb8r7FQ1hmGU6FJSoEyePBm3201CQoJvmWmaOJ1OXn31VaKionzPYSoJi8VSIIz8/bEGgwcP5tChQ7z88ss0bNgQp9NJt27dyM3NPaWf0bx5cwzDYOPGjSWurzhTpkzh3nvvZfbs2Xz88cc89thjzJkzh7PPPpuMjAzGjh3LVVddVWC7kJDK2TUrIhJIJ7sLy1OJxvBogHIQcrvdvPvuu7zwwgusXr3a9/rtt99ISEjgo48+AqB9+/YnvY3b4XD4ng12TJ06dUhOTvYLPKtXr/Zrs3jxYu69914GDBhAmzZtcDqdHDx48JTrj4mJoW/fvkyaNInMzMwC61NSUgrdrnXr1vz2229+2yxevBiLxULLli19yzp06MCoUaP4+eefadu2LR9++CEAHTt2ZNOmTTRr1qzAS0+7FxEp6GR3nNsslefRN/oLHoRmzZrFkSNHuP3222nbtq3fa+DAgUyePBnIH3T70Ucf8cQTT7BhwwbWrl3Lc88959tPo0aNWLhwIbt37/aFlR49enDgwAGef/55tm7dyqRJk/j222/9fn7z5s1577332LBhA8uWLWPQoEEl7kWaNGkSHo+HLl268Pnnn7N582Y2bNjAxIkT6datW6HbDBo0iJCQEAYPHsy6dev48ccfueeee7j55pupW7cu27ZtY9SoUSxZsoQdO3bw/fffs3nzZt+4ndGjR/Puu+8yduxYfv/9dzZs2MC0adN47LHHSlS7iEh14ank8+sco7AThCZPnkzv3r2JiooqsG7gwIGsXLmSNWvW0KNHDz799FO+/PJLzjzzTC688EKWL1/ua/vkk0+yfft2mjZtSp06dYD83pPXXnuNSZMmkZSUxPLly/nXv/5V4OcfOXKEjh07cvPNN3PvvfcSGxtbomNo0qQJv/zyCz179uSBBx6gbdu29OnTh7lz5/L6668Xuk1YWBjfffcdhw8fpnPnzlx99dX06tWLV1991bd+48aNvlvZhw0bxvDhw7njjjsA6Nu3L7NmzeL777+nc+fOnH322fznP/+hYcOGJapdRKS68FaiS1UnY5iV+cb4CpKWlkZUVBSpqalERkb6rcvJyWHbtm00btxY4zakQuh3TkSqioV/HOCWt4//I3n7+OOz9Y+euY53l+wosLwsnez7+0Tq2REREZFSOdkg5MozYkdhR0RERErpZBeHjk3YWhko7IiIiEipeLyBruDUKOyIiIhIqehuLBEREQlqf78b68TLWlN/3u57n5PnP2dbRVPYERERkVL5e89OUUN4Ml3uCqimaAo7IiIiUioFenaKaPf12r3lX8xJKOyIiIhUcy536S4znewy1olSs/IKXV5RAhp2Fi5cyKWXXkpCQgKGYTBjxgy/9YZhFPqaMGGCr02jRo0KrB8/fnwFH0n1NmTIEK644grf5x49enDf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LYfGtUt+daIsBDTsZGRksGXLFt/nbdu2sXr1amJiYmjQoAGQf4np008/LTAgFGDJkiUsW7aMnj17EhERwZIlS7j//vu56aabqFmzZvkUbRilupQUCOHh4TRr1uyU23fs2JGPP/6Y2NhYIiMjC20THx/PsmXL6N69OwBut5tVq1bRsWPHQtu3a9cOr9fLggULfJexTnSsZ8njOf5/njPOOAOn08nOnTuL7BFq3bq1b7D1MUuXLj3p8V100UXUrl2b559/ni+++KLA+pSUlELH7bRu3ZrFixf7LVu8eDEtWrTAas3/V4rNZqN379707t2bJ554gujoaObNm0efPn2KPRYRkUA5scd7/d40ujwzl2evbMeNXRuc0vZ/Dzt2jv8tjzHSfe8jjQCNdT0qoGFn5cqVvrtx4Pj4m8GDBzN16lQApk2bhmma3HDDDQW2dzqdTJs2jTFjxuByuWjcuDH333+/33gcOXWDBg1iwoQJXH755Tz55JPUr1+fHTt2MH36dB566CHq16/PP//5T8aPH0/z5s1p1aoVL7744knnyGnUqBGDBw/mtttu8w1Q3rFjB/v37+faa6+lYcOGGIbBrFmzGDBgAKGhoURERPCvf/2L+++/H6/Xy3nnnUdqaiqLFy8mMjKSwYMHc+edd/LCCy/w4IMP8o9//INVq1b5fmeKcmyM0jXXXMNll13GvffeS7NmzTh48CCffPIJO3fuZNq0aQW2e+CBB+jcuTNPPfUU1113HUuWLOHVV1/ltddeA/IvF/755590796dmjVr8s033+D1emnZsuUpHYuISKAU9tTyMV/9fsph5+8DlE/8XIvjdzpHkkkgBfTW8x49emCaZoHXiV9aw4YNIysri6ioqALbd+zYkaVLl5KSkkJ2djbr169n1KhRujxQSmFhYSxcuJAGDRpw1VVX0bp1a26//XZycnJ8PT0PPPAAN998M4MHD6Zbt25ERERw5ZVXnnS/r7/+OldffTV33303rVq1YujQoWRm5v/i16tXj7Fjx/LII49Qt25dRowYAcBTTz3F448/zrhx42jdujX9+vXj66+/pnHjxgA0aNCAzz//nBkzZpCUlMQbb7zBs88+W+wxXn755fz888/Y7XZuvPFGWrVqxQ033EBqaipPP/10odt07NiRTz75hGnTptG2bVtGjx7Nk08+6btNPjo6munTp3PhhRfSunVr3njjDT766CPatGlzSsciIhIopRvJeJzjbz07l1iXcLP1e8Ck5gk9O1FGZqnHTZYFwwzkT68k0tLSiIqKIjU1tcDlm5ycHLZt20bjxo0L3AkmUh70OyciFcXl9tDysdnUIIsM8seFOqwW/nim8Al/vV6TJo9+4/s8w/EYZ1r+LNBuSO5DXGJdytXWhQB87+lEs3u/pEmdGmVa/8m+v09UZSYVFBERkbJlmnCz9XvWhfyDKy2Lim1/5Wv+4xcLCzoAF1lWEMHxcToXWVedXqGnSWFHRESkmvJ4TZ6yTwXgP47XATD/dnFr2Z+HWLn9MAC//ZVKLVK50/oltUktcr9RRqZf2AGwHw7c8werxK3nIiIiUva8xYxkyXC5ue7N/DtdNz3dD4Dn7G/S2/orl1mXFLldbSONs4xN/guNwPWvqGdHRESkmirkZixOzD9p2ccHIOfk5T/vqrf1VwDOsOzwrUs2/ad76WrZiNXI39Fv3iZMcl+GWatFWZVdYurZOUUaxy0VRb9rIlJRivt7c+ITJNJz8gpt48LJRm8D4qxHCl2fNPwDkuqeUeoay4J6dopxbNK43NzcAFci1UVWVv51brvdHuBKRCTYnTjPTq6Z/313YvwxOJ523l+6s8A4HIBM004KJ5ls1xlR9LoKop6dYthsNsLCwjhw4AB2ux2LRflQyodpmmRlZbF//36io6N9QVtEpLzkeY5HGytebrV+yzxvB/I8+ZesNuw9PjHgB0t30NPya4F9GPYwjuScJNCEFH1LeEVR2CmGYRjEx8ezbds2duzYUfwGIqcpOjqauLi4QJchItVAVu7xGY+thskT9vd4yPyY26a2xTThpy0HARMDk3SXmxhnwUtZpj2UQ9knCTROhZ0qweFw0Lx5c13KknJnt9vVoyMiFebFOX/w6t+WhRq5LNp80Pd5uHUm99q+4OrcJ4gPh79fyfJYQ0hIqAcHCu7/3tzhTDRO7Wnq5Ulh5xRZLBbNZisiIkFl1pq9vFrMV9uD9k8AGG6byWFr+wLrPdYwFuyGGx0Ft736ssvLoszTpgEoIiIi1ZQF7ym37WddgdV0FVjutoZwwIwudJvubRqWtrQypbAjIiJSTYVSMLyc6O93X1k9BYdzeG0hPHlz78J3YA8tdW1lSWFHRESkmgojp8h1FryMs//Pb5nNWzAceayhhEUXcVOFPey06isrCjsiIiLVVOPIwgcPW/HwT9vnXGJd5rc8zJteoK3XForNUUSosVaO+cIUdkRERKqpy9vWLHR5GC7+afuiwPKa3sMFlnltodjtlTtO6G4sERGRamrDzuRClxd1eSvSm1ZgmT37AHbr8bAzxd2XBd4klputWF82ZZ62yh3FREREpFy43B627jlY6Lp+1hWFLo80C17GsrhSsVssfOnpRroZyruei5jvPZM2DePLtN7ToZ4dERGRauiP5AxCKHyy3LH2dwpdHknBsLOz1vl0tBn8M284YbjIJP8OLKsl8JMJHqOeHRERkWpm+i9/cemrPxUZdooSfvTy1nJvS3abtXgibzDPHTwXm8WCicUXdABslehZkurZERERqWb+u+BPAO60fVW67d2XMNfbCYCxXRpjtxbsxWlQq3Lcdg4KOyIiItVWkuXPUm3n4vizIa7rnIhhGFzdqT4HM1zcem5jZvy6m4f7tiqrMk+bwo6IiIiUiMvMnz/n63vPI8Se//Dif1+T5Ft/QYs6AamrKJXngpqIiIhUCTlHe3ZOvOW8MlPPjoiISDVjMT28aH+t1NvbHCGEeC00rETjck5GYUdERKSauSBvEVdZfyq2XXfXf+huWcMZxg5utM3zLX932AXYY5vitFnLs8wyUzX6n0RERKTMRBQyOeDf3Z17LzvNurzv6UMKNfzWhdWo4RurUxWoZ0dERKSacVN0ULkndwSLvW05TKRvWbbp8GtjtYeUW23lQWFHRESkmjlZ2PnKe06BZVk4/RfYQwu0qcx0GUtERKSacWMvtk1kiI33b+/Kf2/uRM4JYeeAGQk29eyIiIhIJeYxiu/rWDOmr+/99ydcxrrE9SzLjMrz3KtToZ4dERGRascsUWvDON7+74OVqwKFHRERkWrGYnp87xd42hffHq/vvesULoFVNgo7IiIi1Yz1aNhJM0O5N28E4/OuB2CKu2+h7XeZsSd8qlqXsCDAYWfhwoVceumlJCQkYBgGM2bM8Fs/ZMgQDMPwe/Xr18+vzeHDhxk0aBCRkZFER0dz++23k5GRUYFHISIiUrVYyQ87P3vbkkoN3vBcSi/XBJ5y31xo+z1RnXjDfSl35N5HxwbRFVhp2QjoAOXMzEySkpK47bbbuOqqqwpt069fP6ZMmeL77HT63/42aNAg9u7dy5w5c8jLy+PWW29l2LBhfPjhh+Vau4iISFV1rGfH4+ulMdhq1iu6vdXKePcNALzfp2V5l1fmAhp2+vfvT//+/U/axul0EhcXV+i6DRs2MHv2bFasWMFZZ50FwCuvvMKAAQP497//TUJCQpnXLCIiUtVZOBZ2Tm0WZKvl+KWr85rXLpeaylOlH7Mzf/58YmNjadmyJXfddReHDh3yrVuyZAnR0dG+oAPQu3dvLBYLy5YtK3KfLpeLtLQ0v5eIiEh14bTk311V1OSCV3X07+U5MexURZV6np1+/fpx1VVX0bhxY7Zu3cqjjz5K//79WbJkCVarleTkZGJjY/22sdlsxMTEkJycXOR+x40bx9ixY8u7fBERkUrJYcm/u8pjWqhdw8nBDBcAXRrHcNPZDend2v+7taqHnUrds3P99ddz2WWX0a5dO6644gpmzZrFihUrmD9//mntd9SoUaSmpvpeu3btKpuCRUREqgDb0VvJ3Vh597YuvuVnJkZzWVICYQ7/vhCFnQrUpEkTateuzZYtWwCIi4tj//79fm3cbjeHDx8ucpwP5I8DioyM9HuJiIhUF1bfmB0LiTHHn3Pl9RY+2aDCTgX666+/OHToEPHx8QB069aNlJQUVq1a5Wszb948vF4vXbt2DVSZIiIilVrY0Y4bN1ZC7MfH7YQ7Cx/dYlPYKb2MjAxWr17N6tWrAdi2bRurV69m586dZGRk8OCDD7J06VK2b9/O3Llzufzyy2nWrBl9++ZPetS6dWv69evH0KFDWb58OYsXL2bEiBFcf/31uhNLRESkCDYjv2cnqUEt7FYLD/drRccG0fzj/MaFtr+3V3MAru5Uv8JqLEsBHaC8cuVKevbs6fs8cuRIAAYPHszrr7/OmjVreOedd0hJSSEhIYGLLrqIp556ym+unQ8++IARI0bQq1cvLBYLAwcOZOLEiRV+LCIiIlWFYeaP2QkLyf8+vatHU+7q0bTI9uc3r8Mvj/ehZljVe1QEBDjs9OjRA9Ms+mFk3333XbH7iImJ0QSCIiIiJWB43flvLKceA2LCHcU3qqSq1JgdEREROX3HJhUsSdipyhR2REREqhnDq7AjIiIiQcxiHr2MZVXYERERkSBkHH0QKMapPRurqlPYERERqWYsR8OOoZ4dERERCUa+sKMxOyIiIhKMfJex1LMjIiIiwUg9OyIiIhLUNM+OiIiIBDWbmQeAxVo1H/9QUgo7IiIi1Yz9aNjB5jx5wyChsCMiIlLN2BR2REREJJg5yc1/o7AjIiIiwWZ/Wg4tzG0AWCyaQVlERESCzGcrtx//4AgLWB0VSWFHRESkGnGaub737tj2Aayk4ijsiIiIVCM2bw4AXtPAsIcEuJqKobAjIiJSjVjd+WEnBwdWS/WIAdXjKEVERAQAiyc/7GTjwGuaAa6mYijsiIiIVCPHLmPlKOyIiIhIMLIe7dnJMR14q0fWUdgRERGpTnxhBwc1nHoQqIiIiAQZS14WANk4SYgODXA1FUNhR0REpBrZdeAwADFRUQGupOIo7IiIiFQjO/flh50MT/W4hAUKOyIiItVKKC4A0hR2REREJBjVNDIAyLJGBriSiqOwIyIiUo1Ekw4o7IiIiEgQMk2TGkb+ree51vAAV1NxFHZERESqCa95fMyO21o9bjsHhR0REZFqw+M1CTsadjy2sABXU3EUdkRERKoJj9ck7OhlLPXsiIiISNDxmOrZERERkSDm8Zq+MTthNXQ3VoVYuHAhl156KQkJCRiGwYwZM3zr8vLyePjhh2nXrh3h4eEkJCRwyy23sGfPHr99NGrUCMMw/F7jx4+v4CMRERGp/Dxek/Cjl7Eu69I8wNVUnICGnczMTJKSkpg0aVKBdVlZWfzyyy88/vjj/PLLL0yfPp1NmzZx2WWXFWj75JNPsnfvXt/rnnvuqYjyRUREqpQTByiHh1efnp2AzhXdv39/+vfvX+i6qKgo5syZ47fs1VdfpUuXLuzcuZMGDRr4lkdERBAXF1eutYqIiFR1eW4P0UfDjuHQPDuVUmpqKoZhEB0d7bd8/Pjx1KpViw4dOjBhwgTcbvdJ9+NyuUhLS/N7iYiIBLvh7y3BbnjyP1SjsFNlngKWk5PDww8/zA033EBk5PGut3vvvZeOHTsSExPDzz//zKhRo9i7dy8vvvhikfsaN24cY8eOrYiyRUREKo3de/ZCCLhNC7aQqECXU2EM0zTNQBcBYBgGX3zxBVdccUWBdXl5eQwcOJC//vqL+fPn+4Wdv3v77be54447yMjIwOl0FtrG5XLhcrl8n9PS0khMTCQ1NfWk+xYREamqnv1mA57Fr/K4/f38BWNSA1tQGUhLSyMqKqrY7+9K37OTl5fHtddey44dO5g3b16xYaRr16643W62b99Oy5YtC23jdDqLDEIiIiLB6M2Ff7I95P1AlxEQlTrsHAs6mzdv5scff6RWrVrFbrN69WosFguxsbEVUKGIiEjlV0ku4gRMQMNORkYGW7Zs8X3etm0bq1evJiYmhvj4eK6++mp++eUXZs2ahcfjITk5GYCYmBgcDgdLlixh2bJl9OzZk4iICJYsWcL999/PTTfdRM2aNQN1WCIiIpWKt3pnncCGnZUrV9KzZ0/f55EjRwIwePBgxowZw5dffgnAmWee6bfdjz/+SI8ePXA6nUybNo0xY8bgcrlo3Lgx999/v28/IiIikj+/zon+a72BOwJUSyAENOz06NHjpF1rxXW7dezYkaVLl5Z1WSIiIkHFe/T7NNt0EGrkMtt6QbUKO1Vqnh0REREpuf/M+YOmxm5CjVwAUt3V6yadSj1AWURERE7fWws3szXkQd/nyJrF3/ATTNSzIyIiEuTOtazz+/zi9Z0CVElgKOyIiIgEuZqk+31uUqdGgCoJDIUdERGRIOd7HlY1pbAjIiIS5Kx4fe9dpj2AlQSGwo6IiEiQs3G8Z+fxGmMCV0iAKOyIiIgEOevRsDPLcza12vUOcDUVT2FHREQkyNmPhh03Fpy26vfVX/2OWEREpJo51rPjwUoNZ/WbYk9hR0REJMjVi8oflOw2rUSFaoCyiIiIBBmL91jPjgWHLmOJiIhIsDHM/LCTh5XzmtUOcDUVT2FHREQkyFmOjtnp0TqeWjWq10NAQWFHREQk6FlNNwB2uyPAlQSGwo6IiEiQsxy9jIWl+t2JBQo7IiIiQe942LEGtpAAUdgREREJcsfG7KhnR0RERIKS1dezU/3m2AGFHRERkaB37DKWYVXPjoiIiAQhXcYSERGRoLM/PYePV+wkO9fju/W8ug5Qrp4RT0REJMh1e+Z7LrKsZOuuAXTBC4BRTXt2qudRi4iIBLmnbW9zg+1H3vllPRbbsTE7GqAsIiIiQeIG248ADLbNwXpszI4GKIuIiEgwsmqAsoiIiAQTt8fr9/nYPDvVdcyOwo6IiEiQcbn/FnaO9uxYNGZHREREgkFuEWGnut56rrAjIiISZE7s2fFg9YUd3Y0lIiIiQeHEnh2vYTk+Zkd3Y4mIiEgwcLk9fp+txyYVVM+OiIiIBIMjmbm+9ybG8ctYuhtLREREylOmy82jX6xl8ZaD5fpzXpnzu++9iYENXcY6LTk5OaXeduHChVx66aUkJCRgGAYzZszwW2+aJqNHjyY+Pp7Q0FB69+7N5s2b/docPnyYQYMGERkZSXR0NLfffjsZGRmlrklERKS8vPrjFj5ctpNBby0r9T68XrPYNgk1jOPtzeNhp0ZoSKl/blVWqrDj9Xp56qmnqFevHjVq1ODPP/8E4PHHH2fy5MmnvJ/MzEySkpKYNGlSoeuff/55Jk6cyBtvvMGyZcsIDw+nb9++fgFr0KBB/P7778yZM4dZs2axcOFChg0bVprDEhERKVfbD2b63v91JKvE29/4v6U0efRrVmw/fNJ2nRPD/T47jPynnlvtzhL/zGBQqrDz9NNPM3XqVJ5//nkcDodvedu2bXnrrbdOeT/9+/fn6aef5sorryywzjRNXnrpJR577DEuv/xy2rdvz7vvvsuePXt8PUAbNmxg9uzZvPXWW3Tt2pXzzjuPV155hWnTprFnz57SHJqIiEi58ZomvS2r6Gxs5LznfsRzCr00J7Jsm88a5z94/80JJ223dscB33sbbuzkhx2sjiK2CG6lCjvvvvsub775JoMGDcJqPT5BUVJSEhs3biyTwrZt20ZycjK9e/f2LYuKiqJr164sWbIEgCVLlhAdHc1ZZ53la9O7d28sFgvLlhXdRehyuUhLS/N7iYiIlLfI3P285XiBT51Pcov1O/YcySx+oxMMsc4m0sjmZcdrJ223YP0u33s7bpzk5X+wqWfnlO3evZtmzZoVWO71esnLyzvtogCSk5MBqFu3rt/yunXr+tYlJycTGxvrt95msxETE+NrU5hx48YRFRXleyUmJpZJzSIiIicT4T7ie/+k/R0ca94v0faNjaK/2050bQf/78Zwjg7/UM/OqTvjjDNYtGhRgeWfffYZHTp0OO2iytuoUaNITU31vXbt2lX8RiIiIqfJMP07BOzJq0u0/QGife/Nw9uKbFfD4j/PjsU4ermsmoadUt2DNnr0aAYPHszu3bvxer1Mnz6dTZs28e677zJr1qwyKSwuLg6Affv2ER8f71u+b98+zjzzTF+b/fv3+23ndrs5fPiwb/vCOJ1OnM7q2ZUnIiKBE+LN9vvstpw8fLg9Xh6ZvpaujWO45qxEcs3jX9vu9IPYYxoXup3hzS10ObbqGXZK1bNz+eWX89VXX/HDDz8QHh7O6NGj2bBhA1999RV9+vQpk8IaN25MXFwcc+fO9S1LS0tj2bJldOvWDYBu3bqRkpLCqlWrfG3mzZuH1+ula9euZVKHiIhIWXF4/O/AyjNOHj4mzt3MZ6v+4sHP1mCaJpHG8e3d2alFbmctKuxYq+c/9Es9u9D555/PnDlzTuuHZ2RksGXLFt/nbdu2sXr1amJiYmjQoAH33XcfTz/9NM2bN6dx48Y8/vjjJCQkcMUVVwDQunVr+vXrx9ChQ3njjTfIy8tjxIgRXH/99SQkJJxWbSIiImUtxOs/ILnYsDPv+HdkustNBCeGnaJvrik67FTPnp1ShZ1du3ZhGAb169cHYPny5Xz44YecccYZJZrjZuXKlfTs2dP3eeTIkQAMHjyYqVOn8tBDD5GZmcmwYcNISUnhvPPOY/bs2YSEHJ8U6YMPPmDEiBH06tULi8XCwIEDmThxYmkOS0REpFzVMPwn4jXdrmK3+a/9RSx42XfkXKKN42HJ4yp6nh6Lp4j9VtMZlEt11DfeeCPDhg3j5ptv9t0e3rZtWz744AOSk5MZPXr0Ke2nR48emGbRcwwYhsGTTz7Jk08+WWSbmJgYPvzwwxIfg4iISEXam5rNnn0H4MRnceadfGLBHpbV9LWuBGDcrFk8yPEnBJw07Jju06o12JRqzM66devo0qULAJ988gnt2rXj559/5oMPPmDq1KllWZ+IiEhQePrrDUQZ/pexiuvZaWkcv1s4bseX2Ayv77O3iKD0w/p9LN64u8DyDLN6PioCShl28vLyfHcz/fDDD1x22WUAtGrVir1795ZddSIiIkHi6zV7uNU6G4BDZgQAhvvkz5cMNY6HoVtt3/mt8+YWHnb+9e6PjLR/VmD5l55uJao3mJQq7LRp04Y33niDRYsWMWfOHPr16wfAnj17qFWrVpkWKCIiEgw6GFuwG/nz32QbYQAYxfTs1CS9yHXe3OxCl99l+5L6RsGnqpuOGqdaatApVdh57rnn+O9//0uPHj244YYbSEpKAuDLL7/0Xd4SERGR4+KNQ773G0M7AuAuIrD4trEXfJzELm+d/DdF9Oxcbv250OXntG5wKmUGpVINUO7RowcHDx4kLS2NmjVr+pYPGzaMsLCwMitOREQkGCSn5vjmyMkynXyZ2pTeDkg+lELBhy/lM02TGu4UsPov32HGksgBzLyCQen3PanYzHDijCMF1tWJqb5XXkp9D5rVasXtdvPTTz8B0LJlSxo1alRWdYmIiASNJ2f9TiL5vTQHG/QjdG8YuCHMUvTzJDfsTaemUfAyljusDriAvGw8XhOrxfCtW7c7lfYYBbYB8DrCT+8gqrBSXcbKzMzktttuIz4+nu7du9O9e3cSEhK4/fbbyco6+W10IiIi1c03a5N9d2KZIdGc07IeAHVPcjHkyolzaWTsK7A8wxoNwC9b99D00W+Yu+F4mxC7lZgTAtJG7/EHXRtOjdkpkZEjR7JgwQK++uorUlJSSElJYebMmSxYsIAHHnigrGsUERGp4kzOt6wBwBIShffoYxsyMzOLnG+uvfEnoUYuKaZ/j8zOnPyEFGccZoxtKs+/O923rm6E0zeo+ULXv3nf09u3LiIiusyOpqopVdj5/PPPmTx5Mv379ycyMpLIyEgGDBjA//73Pz77rODtbiIiItXZE7Z3aWfZDoAlLJrkoxdBnOThcnsLtN95KIt6R++o+t3byG/dDld++DnL8gdDbN/ztmMCAEu2HuLeKfNwHL3j6y+zDtnmCc/C0mWsksnKyqJu3boFlsfGxuoyloiIyN/caJ3ne29zhuGx5IeQECMXt7dgz85Dn/9GwtG7tw5YavutSzH9L0fVMw6xbMt+bvjfUiI9+QOTU6nB5NvPJZMTJhJ0RpTJsVRFpQo73bp144knniAn5/hkSNnZ2YwdO9b3RHIRERHJv6tqrreD73OIJ90XdpzkkVdIz86+NBdxxmEAzu+UhNs8/nVd2EWvByZ/zUWWFbQ3/gTggBnN+c3rkI16dqCUd2O9/PLL9O3bl/r16/vm2Pntt98ICQnhu+++K2ZrERGR6iPX4yWc450DxhmXsfPrPwCINjJZvmkdXTp29N/G7eWyY/PlRCbgxoqN/FD0q7d5gZ/xpG0qF1pX+z7v80bRDMjUZSyglD07bdu2ZfPmzYwbN44zzzyTM888k/Hjx7N582batGlT1jWKiIhUWTm5XsKOPu18VN7tOOs2Z9Gfab71S6e/zPhvN5KVe/zhnWbKruNPOK8Ri/uEyXYOEF3gZ5wYdAAOEgVAs4QTLoFV4xmUSz3PTlhYGEOHDi3LWkRERIJOdp6HGkd7dhKbtMJps3KE4+NnjpgRTFmwFYBH+rcC8F3CAqiR0JLsv80seI1rNJ86nyzyZ7Zrmd/7Y5540Uthp3hffvnlKe/02INBRUREqrtJP25hKPmzHd990ZkA2B1O5no60Mv6K3bye3Q27zs+P84ZtS0ceyyWM6Et6SeEnf9cl8RDH7tZ5m1FV8vGQn+mMyIGgEPGCT07NkdZHVKVc8ph54orrjildoZh4PF4SluPiIhI0NiUnM57S3fwT+fRB34eHTdzVqMYkv/MDyQh5M+ibJww8XGjGl5Ih33RZ1IXSDXDqW3kX/q6skN9Jv+0jet2j2aC7Q2usS0s8HPDI/P3fdhSkxty/49MM4RT77IIPqc8Zsfr9Z7SS0FHREQk397UbLpbfvMFlWOXkkzTJIf8npYQI/do6+Npx5KXP17HY88PR8+7rwPg64hrAPhw6Nk8P7A9h0+4HJZuhgJwwIwirMst+T8HWOJtwxqzadkfXBVSogHK8+bN44wzziAtLa3AutTUVNq0acOiRYvKrDgREZGq7LNVf/Gu47njC0KifG+zj4adUPJ7fQwDpi7exj0f/YqRmwGAeTTsfOftzHmul/myzh0ARIbYubZzIjvN43PevVj7KZrlvMsfN/+CIzw6f/vCJ2eudkoUdl566SWGDh1KZGRkgXVRUVHccccdvPjii2VWnIiISFW2ZfsO/wVHJ/Yben4Tcsz8sOMk17d6zFfr+eq3PRw4lD9A2fQNKjb4y6yDzeo/UPkrz9kA7DVjeGLYDWwZfznnNjs+TkdZJ1+Jws5vv/1Gv379ilx/0UUXsWrVqtMuSkREJBhEZ/0t7Fjyw0r3FnV8l7FutP3IW/YJ/LnhF1+zY7eqGw7/WY8tFv8nmt/ZrxMtc6ZynutlKORBn0U9d6u6KdGt5/v27cNutxe9M5uNAwcOnHZRIiIiwaC5ua3IdcfCDkBv6690sWyivestAN8khEaI/0SAreP9w89dFzSlUa1wzogveMUFdBnrmBL17NSrV49169YVuX7NmjXEx8efdlEiIiLBoKmxx/d+SXhvv3Unhh2ASCOLJGMLNciipbELAMvR3povR5zL/b1bcPt5jf22MQyDAe3iaVS78NmRs/N00xCUMOwMGDCAxx9/3O+ZWMdkZ2fzxBNPcMkll5RZcSIiIlWVaZrUOnoX1iJPW6YnPuK3/tiYnRPNdI7mK8f/cY51PQBWZ36IaV8/mn/2bo7TZi2wzck8dXlbwhxWxl/VrjSHEDRKdBnrscceY/r06bRo0YIRI0bQsmVLADZu3MikSZPweDz83//9X7kUKiIiUpXkeUxqHp0Z8DNPd85qFOu3PpvCJ/lrbNnne+9wZ5xWDd2a1mLtmL5Y/zbWp7opUdipW7cuP//8M3fddRejRo3yDXwyDIO+ffsyadIk6tatW8xeREREgl+ux0uMkR9WLunahp6dE/0b2EKK3Ye7xelfLanuQQdK8Wyshg0b8s0333DkyBG2bNmCaZo0b96cmjVrlkd9IiIiVVJ6Th61jFQAenVqg8XqP3Ikq5DLWCfa5a1DZJwerl0WSv0g0Jo1a9K5c+eyrEVERCRoJKdk0Y78MTuWiNgC68PDa0DBIbA+33vP4kZbiYbWShF0FkVERMqYy+1h2OuzsRne/AXhdQq0iQ4/+WWsFfZOhNj1NV0WSt2zIyIiIsel5+Rx1Ws/c2GrWLq3qMP3zoeOryzkieOpRkSBZQDbvHX5wNObSU/9C8PQeJuyoMgoIiJSBmas3kOdg0txL36FlRu3UtM4+Z1UBy21mebuUWD5s+5BvOW5WAOLy5B6dkRERMqAxYAPHc8C8PwSNxx94MAeM4aEQtp7TfjK243rme+3PJMQxlXzeXHKmsKOiIhIGQi3uH3v+1iPPydyy0XvFBp2TNMsdGLBD+7qiZHYoDxKrLYUdkRERMpAWN5h3/v6xn4AVtc4n/PPOb/Q9h6viaeQiQUNR8EHesrpUdgREREpA7kZh3zv6xx9TES9+PgiBxl7TcihkDuyHGHlUl91VukHKDdq1AjDMAq8hg8fDkCPHj0KrLvzzjsDXLWIiFQ3uemHCyzzOgp/GjnkX8ZKMwsJNurZKXOVPuysWLGCvXv3+l5z5swB4JprrvG1GTp0qF+b559/PlDliohINfX9qk0FlpkhUUW2v7tnM1IoJNg4Cn+CuZRepQ87derUIS4uzveaNWsWTZs25YILLvC1CQsL82sTGVl0khYRESlrpmmSYBwqsNyeU3DZMZclJWCz2enjep5c84SnmZ/CM7OkZCp92DlRbm4u77//PrfddpvfNdAPPviA2rVr07ZtW0aNGkVWVtZJ9+NyuUhLS/N7iYiIlFZ2noezLesLLDdDTv7cyDCHlc1mff40T7hfSxMJlrkqFXZmzJhBSkoKQ4YM8S278cYbef/99/nxxx8ZNWoU7733HjfddNNJ9zNu3DiioqJ8r8TExJO2FxEROZn0HDcNjt6BdaLUjneddLunr8ifT8eGp1zqknyGaZpmoIs4VX379sXhcPDVV18V2WbevHn06tWLLVu20LRp00LbuFwuXC6X73NaWhqJiYmkpqbqEpiIiJTYlv0ZhE9qR7xxfJBymhnKwRFbaFKn6AHHpmmyZOsh4t49lyaW5PyFY1LLu9ygkZaWRlRUVLHf31Xm1vMdO3bwww8/MH369JO269q1K8BJw47T6cTpdJZ5jSIiUj3tTsnmLDL9lmURUuyzrQzD4Jxmtdmpnp1yVWUuY02ZMoXY2Fguvvjik7ZbvXo1APHx8RVQlYiIVHemaXL72z8Tbrj8lnuwEO6wFrGVP+uxp6NLuagSPTter5cpU6YwePBgbLbjJW/dupUPP/yQAQMGUKtWLdasWcP9999P9+7dad++fQArFhGR6mLO+n1EUvDGGK9pITby1O6s0pid8lUlenZ++OEHdu7cyW233ea33OFw8MMPP3DRRRfRqlUrHnjgAQYOHHjSMT0iIiJl6a8j2TQy8sfbpJuhvuWHiTjlfaz1Ni7zuuS4KtGzc9FFF1HYOOrExEQWLFgQgIpERETy7U3NZrpzDAARRrZv+X7z5Ledn+hN9yW0tWzn+7r/4JayLlCqRs+OiIhIZZWTXfjcbqGte5/yPpabrTnbNYnFEf3Kqiw5QZXo2REREamsjFz/iWmH5D5IX8tKmnW6ucT78miccrlQ2BERETkNzrx0v8/zvR2Y7+3A9pYln7C2Ck19V6XoMpaIiMhpaBF9PKDcmzvitPblVdgpFwo7IiIipyMnf8bj9d6GfOk957R25VHWKRe6jCUiInIaLK78sJNOKG0SIrnjgqY0qR1eqn3pMlb5UNgRERE5DdajA5RTzXAMAy5LSihmC6louowlIiJyGo6FnTTCubhd6YLO45ecQa1wB09cekZZliZHqWdHRETkNNiP3o1VI6oWV5xfupmQbz+vMbed26jYB4dK6ahnR0RE5DQcOLAfgMT4OGzW0n+tKuiUH4UdERGRUkrPySPayAAgw1IjwNVIURR2RERESinT5SGG/MtY9ojYAFcjRVHYERERKaWcPA8xRv4A5aQWTQJcjRRFYUdERKSUXG4vtYz8nh1rRJ0AVyNFUdgREREpJVeem5pHL2MRVjuwxUiRFHZERERKKXn/PuyGJ/9DuMJOZaWwIyIiUkpZKfsAyDbCwOYMcDVSFIUdERGR0so4CECmLTqwdchJKeyIiIiUkpF1AIBse80AVyIno7AjIiJSQmk5eTz6xVrSty4DINupO7EqMz0bS0REpITenr+R23+9hqaWvQBkODQ4uTJTz46IiEgJbV7/qy/oALyX0iaA1UhxFHZERERKKO3gbt/73WYtUuPPD2A1UhyFHRERkRJKsKb63j+edyv/ufbMwBUjxVLYERERKaHz+QWApd7W3HPnCKLC7AGuSE5GYUdERKQEdh9MoY9lFQBT3P2oGxkS4IqkOAo7IiIiJTB/wTychptDZgTfec8iPkphp7JT2BERESmBFb+tAeBPM561Y/piGEaAK5LiKOyIiIiUQKgnDYAUM4KIEI3VqQoUdkREREogmkwAsm2RAa5ETpXCjoiISAnEO7IBaNusYYArkVOlsCMiIlICNW0uAOyhUQGuRE6Vwo6IiEgRflk4i11PJ3Fwzfe+ZU4zBwDTHhaosqSEFHZERESKkDlnHInu7YR9McS3zGHm9+xgDw1MUVJilTrsjBkzBsMw/F6tWrXyrc/JyWH48OHUqlWLGjVqMHDgQPbt2xfAikVEJJicb10HQJiZ6VvmPBp2TIWdKqNShx2ANm3asHfvXt/rp59+8q27//77+eqrr/j0009ZsGABe/bs4aqrrgpgtSIiUuV5PXjfHoA5voH/ctOE3Ey6efMfFYFNYaeqsAW6gOLYbDbi4uIKLE9NTWXy5Ml8+OGHXHjhhQBMmTKF1q1bs3TpUs4+++yKLlVERILAX2sXUn/n4gLLzUNbOLziY2odW6CenSqj0vfsbN68mYSEBJo0acKgQYPYuXMnAKtWrSIvL4/evXv72rZq1YoGDRqwZMmSk+7T5XKRlpbm9xIREQF4b+bXhS43Xj2LWssm+D5bTU9FlSSnqVKHna5duzJ16lRmz57N66+/zrZt2zj//PNJT08nOTkZh8NBdHS03zZ169YlOTn5pPsdN24cUVFRvldiYmI5HoWIiFQlLSy7T62hs0b5FiJlplJfxurfv7/vffv27enatSsNGzbkk08+ITS09N2Ho0aNYuTIkb7PaWlpCjwiIgJAW/MPv89Lva0527LBb9nXni60TOxekWXJaajUYefvoqOjadGiBVu2bKFPnz7k5uaSkpLi17uzb9++Qsf4nMjpdOJ0Osu5WhERqWr2r51LS88WAM5zvUwYOWw34/gjZLBfu5F5d7MoVM/Fqioq9WWsv8vIyGDr1q3Ex8fTqVMn7HY7c+fO9a3ftGkTO3fupFu3bgGsUkREqqpvP34dgFmes/nLrMMfZiK52Lkv927mejqw1RvPK+4ryDMcxEaGBLhaOVWVumfnX//6F5deeikNGzZkz549PPHEE1itVm644QaioqK4/fbbGTlyJDExMURGRnLPPffQrVs33YklIiIllpPnob1lGwDfeLpQw2kjw+UGYIb3PGZ4z/O13T7+4oDUKKVTqcPOX3/9xQ033MChQ4eoU6cO5513HkuXLqVOnToA/Oc//8FisTBw4EBcLhd9+/bltddeC3DVIiJSFR3JdNHE2APAn2YCq0f3IT3HTVSonQETF7ExOR2AHi3rBLJMKQXDNE0z0EUEWlpaGlFRUaSmphIZGRnockREJABSPr6L6A0fApA8YhtxtWP81h/KcDH9l91c1bEetWpo3GdlcKrf35W6Z0dERKQiHElJoebRoLPa0oYz/xZ0AGrVcDK0e5OKLk3KQJUaoCwiIlIepny9wPd+WNbdAaxEyoPCjoiIVHt18vLH6qz1NmI/NQNcjZQ1hR0REaneMg/R89BHAOwyY/ni7nMCXJCUNY3ZERGR4Jd1GOxhYP/b3Dj7N2K+cR71vXkAeCIb0qGBenaCjXp2REQkuKXtgVc6wsQO4Eo/vtyVjvuNCzCOBh0AR7vLA1CglDeFHRERCWobln0P2UcgfQ9571zlW75j5tPYvDkAjM+7ntY5b0Ni50CVKeVIYUdERILarPmLfe/te5bD0enlctbN8i1fYzYhmxDOblyrwuuT8qcxOyIiEtTahx2EvBMWuNLIcuXSzNgNwEZvIs/88w4Sa0dis6oPIBjpv6qIiAS1Wq6//Bek7eXz737Aapj8ZdamX+5zNIqNUtAJYurZERGRoJX312rOsvzhv3D1B/y1yQXAn954YiOcGIYRgOqkoijsiIhIcFr5NvZZ9/s+bvXG09SyF36eyKhjy8wEvruve2DqkwqjPjsREQk65s5lcELQ2WdG85O3bYF2Xdu2oGa4oyJLkwBQ2BERkeCSeRDj7Yt8H3d4Y7nS9SSLvO0LNE1reU1FViYBorAjIiJBZcN7x3t0Hs27nQty/8MearPZrOdb/lTeTTTK+RBHrQaBKFEqmMbsiIhIcMhOga/upXXyl75FMzznAgaLHurJ+c//yIt5V+PCzmTPAAASa4YFplapUAo7IiISFPb+8Crx62f6Pl/o+jdzRw0gPioUgAta1GHiH8dnUP7fLWdRJ8JZ4XVKxVPYERGRKm/9TzM5Y9UEv2XR9VoQF3n8wZ8er+l7/9voi4gKs1dYfRJYGrMjIiJV3ubv3vD7/Kb7YqaPuMBv/pxrOycC0LFBtIJONaOeHRERqRIOZ+Yyb/lq+px1BlERNfzWRZMBwDpvIy7JfRaAYX/b/tL28TSMCaN53RpI9aKeHRERqfQyv3+WmAl1uHpBH3558w6/ddm5HmKNFAAmuK8DwFHIox8MwyApMZowh/6dX90o7IiISKX21WdTCP/5Od/nnumz/Na/ufBPYo0jANzcpysXtKjDZ3d1q9AapXJTvBURkUqt9ZrnT/pP89927OefRjoA3Tu1p3fPOhVUmVQV6tkREZFK61CGi2aWPQC4zBP+fe7J871t5Mwfr5NrWnFE1K7Q+qRqUNgREZFKK/lQiu99N9ereM38u6syUw/4lvd2/QCAByvo6eVSCIUdERGptPbv3gpApunkMBEcIhKAayZ8AUBWrptzdr0JQKiRG5gipdJT2BERkUrrix+XA7DXrMU9FzZnrxkDQJxxGNM02Zqc6mu7wZsYkBql8lPYERGRSqtNjfwws89Shxu6NGDf0bDztuPfuFw5uHcu87W9NveJgNQolZ/CjoiIVFoRrv0ANGzcgpphDg6akb51nh1LOPJd/i3pq71NybVpskApnMKOiIhUWjHufQB4IuoR6rDi4vhjHvbv/IMulo0AzPcm8f4/ugakRqn8FHZERKTSqpmzCwBvZH0A3vb0961rvPhhahg5ANTucTedG8VUfIFSJSjsiIhIpbR+dwptjO0AuOu2B2CnWZeZnnMKtL2p11kVWZpUMQo7IiJS6WS43Mye8y01jByyTQe5NZsB8ObNnUg1w/3a3pX7T82vIyelx0WIiEilseK7D2m+7kXm2S9g5OG3APjdbERSfE0ALmoTx9uOSPDmt/9P3kBqdr4mUOVKFVGpe3bGjRtH586diYiIIDY2liuuuIJNmzb5tenRoweGYfi97rzzzgBVLCIipTVvQzIdf76b6PTNXHU06ACs9TbGfsJTzFPMMN/7Ad3P5qnL21ZonVL1VOqws2DBAoYPH87SpUuZM2cOeXl5XHTRRWRmZvq1Gzp0KHv37vW9nn/++QBVLCIipfX67F+wGmaB5UlJHf0+H/YcDzstWydhtegSlpxcpb6MNXv2bL/PU6dOJTY2llWrVtG9e3ff8rCwMOLi4iq6PBERKUMXN8iFtQWXt+h+nd/nFI/j+D/VazYq97qk6qvUPTt/l5qaP5NmTIz/7YUffPABtWvXpm3btowaNYqsrKyT7sflcpGWlub3EhGRwKrp2lNgWVLOm4THNvJbln7CZSxqxJZzVRIMKnXPzom8Xi/33Xcf5557Lm3bHr8+e+ONN9KwYUMSEhJYs2YNDz/8MJs2bWL69OlF7mvcuHGMHTu2IsoWEZFTtPb3dVx+fM5A7sy9j1RqYPztTqufvW341tOZFd5WjNZdWHIKqkzYGT58OOvWreOnn37yWz5s2DDf+3bt2hEfH0+vXr3YunUrTZs2LXRfo0aNYuTIkb7PaWlpJCbqAXIiIoFU3zgAwBvuS5ji7sdVPTozr1P9Au1a1avFXbvvp1VcREWXKFVUlQg7I0aMYNasWSxcuJD69Qv+4p+oa9f86cK3bNlSZNhxOp04nc4yr1NERErH6zV9YWenWZd9xHBu09o0qVPweVdv3NyJNxds5dZzG1d0mVJFVeqwY5om99xzD1988QXz58+ncePif7FXr14NQHx8fDlXJyIipyPP48VmyZ8y5Pc9aSQeDTu7zDoANI0NL3S7etGhjNXt5lIClTrsDB8+nA8//JCZM2cSERFBcnIyAFFRUYSGhrJ161Y+/PBDBgwYQK1atVizZg33338/3bt3p3379gGuXkREipLr9tLnPwuoFe7giUvb8J/XX2Wq4y8Axt92MRk1GhMfFRrgKiVYGKZpFpzUoJL4+6C0Y6ZMmcKQIUPYtWsXN910E+vWrSMzM5PExESuvPJKHnvsMSIjI0/556SlpREVFUVqamqJthMRkdLZsj+DwS9+xufOMcQZR3zL3aYF2+gDYK3U/xaXSuJUv78r9W9TcTksMTGRBQsWVFA1IiJSVhxWC+Psb/kFHYBx7ht4XEFHyph+o0REpIBct5eXfviDzfszOKthTYZ1b1Jkb3tpeEyTcy3rfJ9neM5hft1bGXPbFWX2M0SOUdgRERE/+9Jy6PPsTP5rf4mHrOuZs7kjs6PfoX9SgzL7GR6vl0NEEUsKObfO44qGnbiizPYu4k9hR0RE/Fz18g9843yU+sZBAPpYf2HEx2/Su+2Tfg/kLKnsXA8dRs+ks2UTv3qbsS4kBYCQWmUXokQKo7AjIiJ+LsyZQ337Qb9lbS3bGfjYq1xx7pncdkn3IrY8uc6jpzPNMY4zLVt9y9LNUCLCa59WvSLFqVLPxhIRkfKz7WAmzR+ZycXWZQC4sTLJdgsAd9q+4kvn4/RZfht4vX7bzVqzh/eWbD/pvtNy8njA9qlf0AFYWusK0CMfpJwp7IiICACXTFzEXMcDnG3ZAID1rp/Y5Enwa5NoOYD78A7f589X/cX6j5+gxbfX8dfeZI5k5ha67992pfgGJO83owFYEtqDC4dPKocjEfGnsCMiIgBce0YYDSxHH9ngrYNR9wzW5NQp0O79r+eQneshPSePV79fx0P2T+hq2chrrz7PA888x7It+4D8MTrPfrOB3SnZZLvcvhmSo4fPhTGpdHt4JlarteIOUKothR0REQFg45qlvveZA14B4OEbL+Yjd08gf3wNQO7m+Vz52mLOHPMtjdNX+LZ51j6Ztx3/5rep95OT56Hd6Fm4F09ixHP/xZOTTqiR3+vjiNbjfKRiaYCyiEg1les+9mwqaDzqG4ZYdwHwvacTF53dH4D+7eKh3QwAHnp0NK87XmaY7Ws2H6jHbbZNXGsrOLHrMNvX3PDECwyy/sVo+3vsM6NZldEJgBwjhBBH4c+8EikvCjsiItXQ/xb+yTPf5I/Nef7q9lxr/ZEx9ncBaNymS6HbNDn7UvjlZQAm2N886f4/cjzje1/XSCHlhxfABofMSOqVxQGIlIAuY4mIVEMzv/2a7SE3ssl5Cx99/jnjbG/51tVt1rHQbf45oBPvuXv7LcsxnExqOBGvaeA1DfL+8SM/e84osO2Nth8BOOCNKMOjEDk1CjsiIkEmz+PljQVb+X1PaoF17qPrbrV9B4DTcPOF8wmsRv6zCJOpReQZvQtsB+CwWUi86TX+8B7vm/H0eZZ/3HwTSy94n8wbZ2Kv35HfW44osrboRmeexpGJlE6lfup5RdFTz0UkmFz6yk+s3X086ITarWTneYgIsZGe46YOR1gRMrzAdvt6TySm643Y7fYi9+31moz49/94IONFQlr3od71EwvMk5Oalcf/xg3namM+kdf/l6+//46bU14HwH3dh9haX1xGRyrV3al+fyvsoLAjIlXT5J+28dSs9VzVsR4Trk7CajH4eMVO3pn+FW87JrDXrEWisZ8DZhQfenrxpxlPc2O3b2xOmi2GefXuov/25zlYowX1HlgEluJvBTdNk5w8L6GOotvuT8sh1GElIiQ/OKXt3oR13xrCO1ytSQSlzCjslIDCjohUNK/XZE9qNvVrhpVq+52HsrhqwgxG2j4lnVAOdf4X763cT1TefpaG3HNK+3D1/TfObkPB7QIMsDlKVYtIoJzq97fuxhIRqWAvfr+JifO2AHBBizq8c1vhdz8V5es1exn54VKmOV6ggyV/Px+uyGag2ZCnQ6YUu31WZFPC7piDM7xW/gKbs2QHIFLFKOyIiFQA0zRJy3bjcnt4fd5GzjD+4hn723y+9Xyg6LDzzs/beeLL33n6irbER4Vw+zsrCSOHV+yTfEEH4EbbPL/tDre4lpiLHsYMiST16ydwZaSQseNXopqfQ+2bJutSklQruoyFLmOJSPlatzuVS175CYA6EU7G5DzHxdblvvX3Np/DxEGFB57Oj7zPi/bX+d57FnM8nXjQ/jEDrfn78mDBevPnLHtnFF0tG49vdP96iNJsNhL8TvX7W7eei4iUg9SsPF6fv5WUrFyuf+V7Xra/ymrnUIZlT/YLOgA9No4lLdvltywnz8Md763kUutSzreu4yn7VJaG3OMLOgDWa6ZA0wvZe85Y37LDza5S0BH5G/XsoJ4dETk9+9JyiAjJHxUQ5rCRkpVL1ye/pr9lOb+YzRls/Z7bbd+edB835j7KHUNuY/Dby5lwdXsm/7SN6P3LeMo2heaW3QXap/Z/jaiug3yfc9MO4Fr1PhFdboFjY3FEgpzuxioBhR0RKalct5fVu1K49r9LcJAHQLuwI4y9/SoueeUn3rS/wEXWVeSYdkKMvALb513yCld/foSZztG+ZV1zXqWvdQU7zVh2mnWZ43jQN9nfkZrtsDQ8h6g+D4MrFWKaVMyBilRiCjsloLAjIqcq1+3l8Rnr+GTlDs62bOAO6yzOt6zxhZIn827mQssvnGf93W+7Q9ba/JTbgsutP+cv+NdmUizRjHvmUZ6z/6/4H3znYohrW9aHI1Kl6dZzEZEyNuPX3dz38a/cbv2WbSHvF9pmtP093/t9seex26xDs5RF1Bz4KvFma5Z/dB1hDc6kbY1YooF77nmITa99S0vLX4Xu70h4E2p0uxW7go5IqalnB/XsiEi+739PJj3HzcBO9Qus234wk7tfmMpbjn+TYBz2LXeHxLCrzgU02DUTK17fcm9cEpYhX0FIlN9+XG4PTlvBmYd/+WgsCdunU/OcwTjrd8Dc+xtGu2s02FjkJHQZqwQUdkSqj+dmb+STFbu4rnMi9/ZqTog9P3jcPHkZKVuW097yJ/0GjeT8MxL9tmv5yBfMcTxIA8sB37K0qJZE3vszWG2Qm0l26n5WvTWCpjXtxN/2IThKNzuyiJwaXcYSETlBTp6HC8b/wI2uaaywfoFlqckDC+9k0J2PcNdrs7jN9i1DHd9gMUw+/2gz3cLu5/1/dMVmMeg5YR7DrLN9QSfnnAcI6fUokdYT/oQ6wgmt05jzRn0doCMUkaKoZwf17IhUBy0f+YLVzmGEGrl+yz/zdKevZQURRnaBbZZ5W7HFW49BtrnHF17xBpx5Q3mXKyKnQJMKip/dKdnMXpfMqWbb739PZtaaPeVclQQzt8dbfKMKdLv12wJBB+Bq60IijGxSzTB2dfgXn7gv8K3ratnoF3S2hbWD9tdVSL0iUnYUdoLQ/rQcth7IOP45PYf+47/kj2kPM232/CK3OxaEklNzGP/+V+z65CE++X5ReZcrQcQ0TT5buYseo97izP/7nI3Jadz/9hzOeeQdvln5R4XVsTc1m5mrd+PxmuxPz6HrmK+4z/YZAGlx3WBMKjyRwps17mKLN4HfLS2JvPcnEi9/nKvGzmD1BZNZ423s219aRDO49Vsaj5wLFv3ZFKlqdBmL4LuM1fTRb/B4TZY/2ovYyBB6jXqTuc4HAdhlJJD4xIYC2+xNzWbkc68QTQY/eduxNuQfAPzpjePRelO4okN9ru/SoEKPQ6qGI5m5PDrtZzolOPl24RLG2N+hnWU7HtMglXBijPzgfcCMIvq+xdhrJvq2e+m7tUSEhTBrwRLaxMAzd93IDc9MpZ91OT+F9uL1f15L7RonfyJ3dq6HCTOW4sk8yOFdm2ibu5q9Zi0usPzGRrMBccZhLrYsxWF4AHAN/QlnvXbFHleu28vS7z6mS5tmhDTqfJpnSUTKg+7GKoFgCjuZLjdjn3yEB2yfsrvXq9Tv0IcVz1/q9ywe130bMWrUZcv+DFrHR2AYBje++AVTU2/3fSGcaKM3kXBy+Kjpc2SlHeHRoTfiCNFdJtWZ12vyxhffc2DND7jduYy0fUZNI6PY7faYMcz0nMsf3vr0ta6kn3WF33qPafgm53ObFqZ7zqfvA1OJqhlTYF+maXLuqHe51zadK60/4TTcxf78ZbHX0vWuN/XEb5EgobBTAsEUdn7fk0qbN4/3wMzydOUS6zK/Nos8bfnc050RthlsqtWLNfvdjLJ/VGBfh80avn+Vn2i1tymLWzxEuzbt6dK2pe/W3ergQGomC6b/l3POPpeE1l0B8Hg8ZCVvISK+GViC/1y89d0Kav40histi7EYBf98zPV2pNfDn3HXMy/zH/tr/GVvyCe2S7kz+3+F/j4VZ7GnDY2Gvk+9Bk3weE32HUnjfy/+H5dal9Da2FnoOByAbNPBD96OdLVsZFt4Ep3u+xSb4+S9RCJStSjslEAwhZ1Bj73IB7axBZZv99ZltHsI/7O/cNJ/Ae/wxlLLSGNe67HM2l+H8YfuPekXlMu0Yxn6A/b6ZwKQlXqAUKuJUSP2tI+lMknZsZZ5X39EQvI8zrYcvwy426xFFJnUMHLY4WhGg+v+zUFbHLM+f4cuTWLZfjiLmG1fk2jZz5EGfWl30/PgrAF52WB1+IUjM20vZB/GiGkC9tAiazG9HlLXfktkjRpYIuqSlX6E1COH8BpW0tfPIScznVq165DQ5lysTS8s3VwvXg9gFDo+5f3HruKmo4N2N3gbkIODDd4G7IvuQNfWjThnwM1gGHi8JjnZWYSHhwNw7+S5RP85k3/ZPiHSyOYrz9nUatKBVLeDpH5DGPHaTO6yfUkuNno9/Am3Pvs/3rL/m3Aj/2ngX3u6UNtIo6tlo189v3sbsq3VMNZ4m9A4JJMrL7uCLbsP0qZhLIbFCqapnhyRIKWwUwLBEnZWr1jImV9fWmD5hLxr6XnrWFrUr8P/PTmG5+z/w4oX5wkPJ1zjbcz0+Ae4/bqB7DqcwTnNYvF6Ta59eTY18/bRofM5bNu4Bs+uFbzoeKPAz8iwRpHitlOXI1jxsqXmefzpiiKpfQfi+z1Qdb5sTBPv9p85uHEhubtWk/PXGhoa+7AXcnmvNFLMcLy2UGI8BzlgRrIxtCP1LYcJzdxFnHEEgBwcuFpeQWhMAi6PQVjtRPanpEFaMg4rbPltMV1Ze0o/L82IJCehK5mWcBw2GxGxDckywsCVji39L6KadcHe8SY4sh3Sk0n+cy2Za76kfsY6PBY7ufZIUh11sbjSiTDTsHhcRHpTAfjU3Z2BT3yOxe445eM3TZN/vbeQJmE5DL+6b4H1mS434c78uWsOZ+byn2cf5Cn71MKPzQzj3rzhvPJ/9xNxNFCJSPVS7cLOpEmTmDBhAsnJySQlJfHKK6/QpUuXU9q2yoQd08S7czn8tQxLSCS4XXDG5ZCxn79+X0zMoicIM1xkmw4WDfiBl2f8RB1bJpPHPojVkh821u9JY+DEOQzq0oAv1+zhLvcHZOPk7rFT8meBLcY3a/fynw+/5IgZwUXWlYy1TS02CGyyNKVZn6FY6zSHGnH+DzPMOgxWO3jyICwGXBngCD/1cHSsByInBZLX5m8XXgdqtwRPLuRl5fei5GbCwT/wHNmBa9evhEbHYYTFgDsHt8fLlt9XEJm2mRAzmxjv4UJ/1DJvK9Z7G+LoNoyPN+YRfehXosnAFRJLWk4uN1vn0M7YRqLlAL97G5KDg6bGHn70nskusw63Wr8rdC6X0tpvRuMgDy+Gr/dtgTeJrbbmhOUe5CLrylJdNiqO27TwlXMAVzzybn7PSTmauXo3b3/8GU/Y36WjZQtzPB2Z5umJFwuj77uHxrFRxe9ERIJWtQo7H3/8MbfccgtvvPEGXbt25aWXXuLTTz9l06ZNxMYWfzmlQsKO1wvu7PwvYE/e0f898X1e/sv05H9B56SBKz3/hQmGhV3LvyTxyNJif9T7zV7kpptuP6WytuzPoGGtMOzWkt9O63J7uO7FL+ma+h232b5ls7cer3kupwbZvGZ/GZtR+DwruVGNsddtwZH9u4lJWedbnmcJxe7NJi+6CfZG3SCmCYTVyg8kGQcxU/7CmpeOKyUZMvdj5mQQ5j5S4rqLk2k6+dHbgXXeRuwyYwk1XCSdO4Ab+13gC42FOZjhYvovf/HzH8m8eENnfty4n+w8D9ecVZ8sl4cRb35DrQPLqRXXgOVHwol27eYcy+9khSawIKM+4VF1OOKIo33aj7TybsHwenCSS5xxGBd29ps1AXA47HjOHEKzMzqwcscRzmpUk+VbD9AyykPvs87AbrVwKMPFi18tJ/7gUryZB8lJPwKYNDaSCTdyyCSMDNPJ9dYfCTVySTdD+cuszR6zNuvNhoS2vwKPx01GZgZ//bmJkIia1ImpiT28Ju3OPIsL2jTCqMDeugc/+ZVffl3B1H8NIrGWenFEJF+1Cjtdu3alc+fOvPrqqwB4vV4SExO55557eOSRR4rdvrzCTt7LZ2E7sgUAg7I7zXvMGA6aUTQ2kn09Bdu8dVngTWJRnRt5694rKvSLKCfPww8b9mFgcHH7eN5a9CdTv1lAjukkwsjiSusibrPOBqCGkVNudew1Y8g0Q0gwDhF2dJwHQK5pJQcnu83abDXj2WnWpQbZ1DJSOWxGYsXDn2YCG8wG1ItyEt6oM/dc0oWaYfZyP48er1logDJNk8xcD1bDYPuhTFrUjcBqMch0uXHaLNhKEU4B9qRk47RZqBFi47ddqXw6fxV4XByx1uGidgk0i61Bu3pRpQq/IiIVrdqEndzcXMLCwvjss8+44oorfMsHDx5MSkoKM2fOLLCNy+XC5Tr+ZZiWlkZiYmKZh51dY1uTaBY+C7HLtJOHlTxs5GEjFxtu04oHCzk4yCCUNDOMLELwYMGKlxQznHc8fYlt3JZa4U7mrN1JrHGE3WZtBp/ThNvObUyDWpXjlnC3x4vVYuA14R/vrODHTfsBqEMKLSx/0dDYTwRZfO3tShYh1AmzEePex1ZXNF0tG2hkJNPA2E+0kYELBxlmCDvNWNIIx4WdDDOUnWZdDlCT2KgQUtxOWiXGUruGk0UbdhPuTWdvtkHzhDr8tjeLMxOj6dGiDo1qh3Nhq1h+2XmEPI+XBjFh5LpN3y34IiJSdVSbB4EePHgQj8dD3bp1/ZbXrVuXjRs3FrrNuHHjGDu24B1LZe2hqAnsOZyR36djsYItBK/FSXiIkzqRIThsFrymicdrEmK34rBasFgMHFYLtWs4qBnuIDrUDkBWrodmsTWY27z2CV/KHcv9GErrWM+D1YAptx4fO+X1muxNyyE5NYdQu5VRCQV/Of86ksXGvems35vGHzl5eLz5l8zu6N4UiwWsFoP4qKLvVoL2xdZ3fvM6JT4mERGpmqp82CmNUaNGMXLkSN/nYz07Ze2j+y4p831WdRaLQb3oUOpFFx1W6tcMo37NMHqfUbfINiIiIqeqyoed2rVrY7Va2bdvn9/yffv2ERcXV+g2TqcTp1OTi4mIiFQHVX4UosPhoFOnTsyde/zJxF6vl7lz59KtW7cAViYiIiKVQZXv2QEYOXIkgwcP5qyzzqJLly689NJLZGZmcuuttwa6NBEREQmwoAg71113HQcOHGD06NEkJydz5plnMnv27AKDlkVERKT6qfK3npeFKjODsoiIiPic6vd3lR+zIyIiInIyCjsiIiIS1BR2REREJKgp7IiIiEhQU9gRERGRoKawIyIiIkFNYUdERESCmsKOiIiIBDWFHREREQlqQfG4iNN1bBLptLS0AFciIiIip+rY93ZxD4NQ2AHS09MBSExMDHAlIiIiUlLp6elERUUVuV7PxgK8Xi979uwhIiICwzDKbL9paWkkJiaya9cuPXOrCDpHxdM5Kp7OUfF0joqnc1S8ynaOTNMkPT2dhIQELJaiR+aoZwewWCzUr1+/3PYfGRlZKX4pKjOdo+LpHBVP56h4OkfF0zkqXmU6Ryfr0TlGA5RFREQkqCnsiIiISFBT2ClHTqeTJ554AqfTGehSKi2do+LpHBVP56h4OkfF0zkqXlU9RxqgLCIiIkFNPTsiIiIS1BR2REREJKgp7IiIiEhQU9gRERGRoKawU44mTZpEo0aNCAkJoWvXrixfvjzQJZWLhQsXcumll5KQkIBhGMyYMcNvvWmajB49mvj4eEJDQ+nduzebN2/2a3P48GEGDRpEZGQk0dHR3H777WRkZPi1WbNmDeeffz4hISEkJiby/PPPl/ehlZlx48bRuXNnIiIiiI2N5YorrmDTpk1+bXJychg+fDi1atWiRo0aDBw4kH379vm12blzJxdffDFhYWHExsby4IMP4na7/drMnz+fjh074nQ6adasGVOnTi3vwysTr7/+Ou3bt/dNVtatWze+/fZb3/rqfn7+bvz48RiGwX333edbVt3P0ZgxYzAMw+/VqlUr3/rqfn6O2b17NzfddBO1atUiNDSUdu3asXLlSt/6oPybbUq5mDZtmulwOMy3337b/P33382hQ4ea0dHR5r59+wJdWpn75ptvzP/7v/8zp0+fbgLmF1984bd+/PjxZlRUlDljxgzzt99+My+77DKzcePGZnZ2tq9Nv379zKSkJHPp0qXmokWLzGbNmpk33HCDb31qaqpZt25dc9CgQea6devMjz76yAwNDTX/+9//VtRhnpa+ffuaU6ZMMdetW2euXr3aHDBggNmgQQMzIyPD1+bOO+80ExMTzblz55orV640zz77bPOcc87xrXe73Wbbtm3N3r17m7/++qv5zTffmLVr1zZHjRrla/Pnn3+aYWFh5siRI83169ebr7zyimm1Ws3Zs2dX6PGWxpdffml+/fXX5h9//GFu2rTJfPTRR0273W6uW7fONE2dnxMtX77cbNSokdm+fXvzn//8p295dT9HTzzxhNmmTRtz7969vteBAwd866v7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\n"
          },
          "metadata": {}
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "test_predictions = model(X_test.to(device)).detach().cpu().numpy().flatten()\n",
        "\n",
        "dummies = np.zeros((X_test.shape[0], lookback+1))\n",
        "dummies[:, 0] = test_predictions\n",
        "dummies = scaler.inverse_transform(dummies)\n",
        "\n",
        "test_predictions = dc(dummies[:, 0])\n",
        "test_predictions"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "Ei3ayw5K1ERc",
        "outputId": "e7bb576d-3e00-4225-a569-95370fb95bdd"
      },
      "execution_count": 74,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "array([168.32288334, 168.09333286, 167.38686207, 167.58160202,\n",
              "       167.75851152, 167.89542477, 167.77192327, 167.97986933,\n",
              "       167.81588803, 167.60903136, 167.01625753, 167.27183671,\n",
              "       166.81986126, 165.98617614, 165.18339419, 164.38851589,\n",
              "       163.50724213, 163.54777752, 163.48905595, 162.87754014,\n",
              "       162.76491033, 161.98179858, 160.83382384, 158.89762387,\n",
              "       155.43451856, 152.89664622, 149.61044485, 146.59953176,\n",
              "       144.3226522 , 143.56710874, 144.65137627, 146.52414138,\n",
              "       148.53264141, 148.02034365, 150.78824448, 152.65672427,\n",
              "       155.00540367, 157.09208426, 158.52908696, 158.49491006,\n",
              "       158.39135111, 158.00066508, 157.87022705, 157.14070672,\n",
              "       156.38484089, 155.39720688, 153.43929133, 152.87050636,\n",
              "       152.68129118, 152.79078064, 152.84608397, 153.30048832,\n",
              "       152.83656846, 151.77842411, 148.99157564, 146.16793239,\n",
              "       144.0704079 , 143.6333838 , 143.6631142 , 143.89053592,\n",
              "       145.58366249, 148.03252706, 150.76705136, 153.85097039,\n",
              "       156.60809402, 159.51987798, 161.21322688, 162.30865512,\n",
              "       163.1173787 , 164.36274844, 165.24786842, 165.38458157,\n",
              "       164.91365848, 164.65280465, 165.18905236, 164.57937628,\n",
              "       163.19244671, 162.03675174, 160.39867838, 158.34191717,\n",
              "       156.4473531 , 155.7343404 , 154.61372829, 154.27290419,\n",
              "       155.21066516, 155.34140889, 154.4642259 , 152.83357819,\n",
              "       151.54238174, 148.89764336, 146.26800084, 145.15577594,\n",
              "       140.86313744, 137.39972644, 133.81013492, 130.76567301,\n",
              "       126.77168357, 123.22091277, 119.79613072, 116.58564489,\n",
              "       112.96982459, 110.11521148, 109.26227303, 109.16616197,\n",
              "       110.56237638, 110.94744037, 111.02684371, 110.38397175,\n",
              "       109.3103508 , 107.89717855, 107.02193813, 107.42233142,\n",
              "       108.79146666, 111.42625044, 114.78347628, 118.77071259,\n",
              "       121.43507393, 123.49166562, 124.40864199, 124.3811654 ,\n",
              "       123.14067848, 120.51486551, 116.77668314, 112.58616959,\n",
              "       109.39332246, 106.59845639, 105.40561926, 105.70379311,\n",
              "       106.69169669, 108.1906002 , 110.21292051, 112.00141335,\n",
              "       112.32971779, 112.14116402, 110.98365988, 109.91568598,\n",
              "       109.66083214, 110.45481002, 112.24478967, 113.89922058,\n",
              "       114.69039161, 114.24293769, 113.33349258, 112.27375027,\n",
              "       111.80218521, 111.94728557, 113.37703492, 115.85326213,\n",
              "       118.69121476, 121.00813782, 122.47380932, 122.14976518,\n",
              "       121.86886598, 121.44148244, 123.43451978, 126.61705937,\n",
              "       130.2195624 , 134.40605465, 137.85414746, 140.07271676,\n",
              "       141.10668328, 141.45075333, 142.30561489, 142.35273666,\n",
              "       142.90445263, 143.49605369, 144.47253811, 144.79757714,\n",
              "       144.91987808, 144.10117767, 142.24573167, 140.39693875,\n",
              "       138.56726577, 137.6616641 , 136.1240955 , 135.00595955,\n",
              "       133.92516862, 132.43755921, 131.10464348, 129.91264284,\n",
              "       129.05616943, 129.0798248 , 129.40946596, 130.55503681,\n",
              "       132.34906277, 132.52009456, 132.66221854, 131.7794163 ,\n",
              "       130.10492055, 128.44135208, 126.60657119, 124.81581619,\n",
              "       122.97165318, 120.73894958, 118.88455685, 117.15387404,\n",
              "       116.54152451, 116.13020672, 115.77472585, 115.90756499,\n",
              "       116.75086288, 117.8216603 , 118.94957577, 119.2907695 ,\n",
              "       118.91848085, 117.53370784, 115.87187072, 114.40024091,\n",
              "       112.60915798, 112.27299158, 112.66273273, 113.31288028,\n",
              "       114.20292755, 115.82452663, 117.49294734, 118.68804663,\n",
              "       118.95534233, 118.18147929, 115.59861672, 112.20412644,\n",
              "       107.83624207, 103.10096854,  98.65678781,  95.28900171,\n",
              "        92.84757947,  91.17497349,  89.78696269,  90.31521505,\n",
              "        92.02922922,  93.86520233,  95.89622665,  97.41695119,\n",
              "        97.87494331,  97.10513493,  95.78662047,  94.68471979,\n",
              "        93.93403135,  93.47416058,  93.40214954,  93.27553549,\n",
              "        93.75314779,  94.14124929,  94.34578266,  94.04197565,\n",
              "        93.08565889,  91.86003161,  90.72447928,  89.74261721,\n",
              "        89.40495845,  89.8011498 ,  90.36276201,  90.4105676 ,\n",
              "        90.0880351 ,  89.14549137,  87.96856992,  86.98568255,\n",
              "        85.92701574,  85.38537664,  84.79628785,  84.14846637,\n",
              "        83.78793872,  83.50076162,  83.68955994,  83.98156149,\n",
              "        84.1094678 ,  84.54480501,  85.04431076,  85.91081659,\n",
              "        87.64610708,  89.72975293,  92.2683091 ,  94.16708623,\n",
              "        95.39742957,  95.65810555,  95.81710121,  95.95142715,\n",
              "        95.98045445,  96.31265496,  96.99076265,  98.11635205,\n",
              "        98.93167034, 100.12521336, 101.60174265, 104.09401893,\n",
              "       105.15796319, 105.54681226, 105.3627439 , 104.21265429,\n",
              "       102.43019479, 100.56831805,  99.67419946,  99.19658994,\n",
              "        99.25482518,  99.24543473,  99.12231397,  98.39203217,\n",
              "        97.51903446,  96.63931975,  95.62184713,  94.9329678 ,\n",
              "        94.51116739,  93.96151627,  93.36971789,  93.25824973,\n",
              "        93.252108  ,  93.30269248,  93.4536789 ,  93.41639501,\n",
              "        92.98135515,  92.5694232 ,  92.60948893,  93.08040369,\n",
              "        94.38724904,  95.88596914,  97.13233082,  98.32071868,\n",
              "        98.84406043,  99.0175628 ,  98.85425681,  98.68721575,\n",
              "        98.3614625 ,  98.37512158,  98.91142766,  99.87621778,\n",
              "       100.8760602 , 102.01534482])"
            ]
          },
          "metadata": {},
          "execution_count": 74
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "dummies = np.zeros((X_test.shape[0], lookback+1))\n",
        "dummies[:, 0] = y_test.flatten()\n",
        "dummies = scaler.inverse_transform(dummies)\n",
        "\n",
        "new_y_test = dc(dummies[:, 0])\n",
        "new_y_test"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "CDSEx5_21IJG",
        "outputId": "44804997-be06-4ff8-db17-8990e711aff4"
      },
      "execution_count": 76,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "array([170.01749949, 167.07899763, 170.41700626, 171.03700377,\n",
              "       171.0684961 , 169.66949429, 170.66099675, 169.20100565,\n",
              "       168.64449858, 166.71699707, 170.40449492, 167.52200227,\n",
              "       164.35699578, 163.25399737, 162.55400179, 161.48599177,\n",
              "       165.36199892, 165.20699954, 161.21400501, 162.13799851,\n",
              "       158.91749416, 156.29899568, 151.66749509, 142.64300408,\n",
              "       144.54400445, 139.98599336, 138.87249844, 139.63749627,\n",
              "       143.97799855, 149.57350001, 151.19349835, 150.61250219,\n",
              "       138.84550541, 157.63949825, 157.93550165, 161.41349717,\n",
              "       161.18949925, 159.003495  , 153.29350176, 155.1670061 ,\n",
              "       156.51049894, 158.10049453, 154.6524962 , 152.60149876,\n",
              "       150.19749381, 144.82699629, 151.35800212, 153.78849709,\n",
              "       153.56300403, 151.14199678, 152.05250627, 147.89849848,\n",
              "       145.64100565, 137.45300383, 136.01449488, 139.27900567,\n",
              "       146.81750468, 145.52450739, 141.8529947 , 147.36650272,\n",
              "       153.10400311, 157.23899657, 161.25050521, 161.49149987,\n",
              "       164.8890082 , 163.4080074 , 163.64950785, 164.77349929,\n",
              "       168.99049174, 169.31500275, 166.30099379, 162.99749555,\n",
              "       163.55999984, 168.34649425, 164.05499516, 158.75599734,\n",
              "       157.78449856, 154.4604964 , 151.1219931 , 150.78750525,\n",
              "       155.54100108, 151.70649644, 152.78500575, 158.11549591,\n",
              "       153.99799942, 148.29600432, 144.35000372, 146.07400567,\n",
              "       139.39100462, 138.16700588, 144.59649537, 124.2815027 ,\n",
              "       124.50000086, 124.25350088, 125.92849685, 116.40699847,\n",
              "       114.77249899, 108.78900163, 108.85900063, 105.37200234,\n",
              "       106.93049589, 113.05500005, 110.81050072, 115.36850069,\n",
              "       107.11250358, 107.31900035, 107.59100239, 107.55699918,\n",
              "       104.09999809, 106.77500184, 111.07749906, 115.14649953,\n",
              "       120.20950223, 121.68399725, 125.51100121, 122.34999935,\n",
              "       124.79000149, 122.99999961, 121.18000054, 116.15000198,\n",
              "       109.65000214, 103.66999806, 102.30999829, 107.6699986 ,\n",
              "       103.66000386, 106.22000101, 108.67999989, 108.94999683,\n",
              "       112.44000207, 116.45999935, 113.22000127, 107.40000166,\n",
              "       108.91999825, 106.20999917, 109.55999806, 113.50000006,\n",
              "       114.33000152, 116.3300018 , 115.54000075, 111.74999999,\n",
              "       109.22000073, 110.40000137, 110.62999651, 113.55000232,\n",
              "       113.76000211, 118.20999802, 122.76999614, 124.62999702,\n",
              "       122.41999835, 121.13999873, 114.80999825, 120.97000076,\n",
              "       122.28000035, 134.94999758, 135.38999806, 134.16000488,\n",
              "       139.5200031 , 142.57000925, 140.80000272, 139.41000507,\n",
              "       137.83000298, 142.69000357, 140.64000103, 143.55000084,\n",
              "       143.17999102, 144.7799968 , 142.10000324, 142.30000119,\n",
              "       138.22999608, 133.22000121, 133.61999431, 133.80000247,\n",
              "       137.27999891, 130.7499991 , 129.78999174, 128.72999653,\n",
              "       126.76999668, 127.82000117, 127.51000241, 126.11000014,\n",
              "       129.47999576, 129.82000839, 133.27000486, 136.44999605,\n",
              "       126.82000034, 128.55000227, 126.27999811, 123.52999999,\n",
              "       124.66000532, 122.19000322, 118.54000046, 117.30999894,\n",
              "       113.77999884, 115.15000254, 114.41000376, 118.01000286,\n",
              "       114.80000336, 112.99999964, 115.8799967 , 121.08999508,\n",
              "       120.94999707, 120.30000237, 114.55999805, 113.66999803,\n",
              "       112.2099986 , 112.90000206, 112.5299992 , 106.90000263,\n",
              "       113.79000069, 116.36000038, 115.0700003 , 115.25000012,\n",
              "       119.31999967, 119.82000008, 120.59999928, 115.66000341,\n",
              "       110.95999895, 103.41000365, 102.4400021 ,  96.79000116,\n",
              "        92.12000301,  89.30000302,  90.98000304,  90.52999899,\n",
              "        89.98000291,  86.13999884,  96.62999704, 100.79000101,\n",
              "        98.48999791,  98.94000197,  97.1200029 ,  94.84999805,\n",
              "        94.13999897,  92.45999904,  93.199997  ,  94.12999696,\n",
              "        93.410004  ,  93.94999701,  92.41999801,  96.54000095,\n",
              "        95.50000004,  94.12999696,  91.01000197,  88.24999993,\n",
              "        88.45999902,  90.34999813,  89.08999594,  90.55000302,\n",
              "        92.48999797,  91.58000208,  88.44999683,  87.86000102,\n",
              "        84.91999777,  85.19000167,  86.76999681,  83.79000078,\n",
              "        85.25000022,  83.04000085,  81.81999979,  84.17999969,\n",
              "        83.99999987,  85.82000033,  85.13999871,  83.12000309,\n",
              "        86.08000168,  87.3600013 ,  89.87000314,  95.08999606,\n",
              "        95.26999692,  98.12000304,  96.05000307,  95.45999893,\n",
              "        93.68      ,  97.25000011,  97.51999705,  96.32000002,\n",
              "        97.18000006,  99.22000076, 102.2399979 , 100.55000334,\n",
              "       103.12999722, 105.15000257, 112.9100039 , 103.38999927,\n",
              "       102.18000005, 102.11000105, 100.05000292,  98.23999805,\n",
              "        97.61000113,  99.54000066,  99.69999679, 101.16000387,\n",
              "        98.15000197,  97.19999715,  94.58000197,  95.79000102,\n",
              "        95.81999995,  93.5       ,  93.760002  ,  94.23000296,\n",
              "        92.16999798,  92.12999703,  94.90000205,  93.74999998,\n",
              "        93.55000299,  93.919998  ,  92.25000004,  90.73000301,\n",
              "        92.43000003,  94.87999697,  96.19999701, 100.04000108,\n",
              "        98.94999687,  97.70999906, 100.61000119,  98.69999701,\n",
              "        98.70999885,  98.12999689,  98.04000115,  97.23999792,\n",
              "       100.25000017, 102.00000023, 103.290001  , 102.41000421,\n",
              "       103.94999685, 101.09999768])"
            ]
          },
          "metadata": {},
          "execution_count": 76
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "plt.plot(new_y_test, label='Actual Close')\n",
        "plt.plot(test_predictions, label='Predicted Close')\n",
        "plt.xlabel('Day')\n",
        "plt.ylabel('Close')\n",
        "plt.legend()\n",
        "plt.show()"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 449
        },
        "id": "qHejoSmO1MEh",
        "outputId": "191c34ed-d883-4455-d00b-8e98684a6323"
      },
      "execution_count": 77,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 640x480 with 1 Axes>"
            ],
            "image/png": "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\n"
          },
          "metadata": {}
        }
      ]
    }
  ]
}